Comcast blames the higher costs on the higher costs of programming (specifically sports), but also lays the blame on "new advanced set top boxes and modems" and DOCSIS 3.0 network upgrades.
Simple solution, Comcast (and all other providers): move all sports channels to a sports tier where they belong. Then drop the cost of basic cable without the sports tier down to reflect the savings. Those who are interested in having the sports tier can then purchase it as a premium package, just like movies and pay-per-view. This way those who do not care about receiving channels like ESPN don't have their bills inflated because of it.
These companies could also offer access to the sports tier on a pay-per-view type basis, charging some fee for 48 hour access over weekends or the like, for casual sports viewers. (Weekend access fees, when measured on a per-day basis, would be higher than just buying monthly access to the sports tier of course.)
Or, even better yet, why not just offer ala carte access to all channels-- like many users have been requesting for many years? The technology required to do this is in place, for the most part. The only thing stopping it is broadcasters, who bundle channels together to force viewers into paying for channels they neither want nor care about.