Not having traded CFDs before I'm probably completely wrong, but here goes:
1) Trades can be kept open indefinitely, however financing charges will be incurred, therefore making them inefficient for long term trading (investing).
2) Not having traded, I can't comment on CMC or any of the others operationally, however a significant difference between them & the likes of GNI, is that with CMC you pay an increased spread, as opposed to commission (0.25% of every trade with GNI, I believe), although with GNI you will also pay the current market spread. You should be able to arrange a free trial of the various options available, therefore getting a 'feel' for the platform that will suit you best.
Hope this is of some use.