Some (not all) of the blame must be allocated to local governments. There is absolutely no shortage of bandwidth on the internet backbone (intercity) networks -- all of the bottleneck is in the last mile. While two of the largest corporations in the US (Verizon and AT&T) are trying to run last-mile fiber, they are significantly impeded by the need to deal with local governments that have monopoly control over the public rights of way (PROW) -- i.e., the street in front of your house. In 1996 Congress made a half hearted attempt at dealing with this problem by mandating that local governments get out of the way of telecommunications companies (see, 47 U.S.C. s253), but two things have prevented that from leading to better broadband service. First, the cities derive a ton of "free" revenue from charging for access to the PROW (free in the sense that it is collected from someone who cannot vote the local politicians out of office), so they have essentially ignored the law until they actually lose a lawsuit, which is highly inefficient and time consuming (I know that because I am an attorney who has litigated those cases). Second, because Verizon and AT&T (and, presumably any others who would try to build FttH) plan on offering video services, their networks have been classified as cable TV, not "telecommunications" -- meaning that section 253 does not apply, and the cities can force them to apply for "franchises" and demand ridiculous fees before allowing them access to the PROW. Many city governments claim they are trying to encourage competition in cable TV, but they aren't, really, because they would rather just milk the one provider already established for huge fees, while setting the bar too high for anyone to do new build-outs.
Comcast complains about congestion, which occurs at the street corner where all the connections on the block coming in over copper are aggregated onto the fiber network, but that problem would be largely mitigated by giving every house its own fiber connection directly to the head-end. Comcast (and the other cable TV companies) had no incentive to do that because they faced zero competition when they were upgrading their networks thanks to local monopolistic franchising policies. If Verizon and AT&T (and 4 or 5 others) had been breathing down their necks 5-10 years ago, they might have spent the extra money to put fiber all the way to the living room. Now, of course, they would have to basically start their upgrade over again, which they can't afford to do.
If you want to make a difference (and yes, people can still make a difference in politics, particularly if they stop focusing on the national scale and look locally), call your local government and demand that they open up the PROW to others, and that they stop granting monopolistic cable TV franchises.