You don't need a dozen or more competitors to have a reasonable level of competition. You just need a few, targeting the right market segments. Cities are almost exclusively responsible for preventing those few competitors from arising.
Here is (I believe) the current franchise agreement between Wilmington, DE and Comcast: http://www.wilmingtonde.gov/docs/1320/3716Rev1.pdf.
Note Section 1(F), that it's a non-exclusive franchise. Then note 2(A)-(C). 2(C) states that Comcast must offer service in any part of the city with at least 40 residences per linear mile of cable plant, without cost-sharing with residents. It also extracts almost $2 million in grants, on top of the franchise fee, which is 5% of gross.
Basic cable here in Wilmington is $13.50/month (which is usually regulated by state law). This is usually a regulated rate set by state law. Serving the least dense linear mile at basic rates therefore offers a potential maximum revenue of $540/month. Out of that comes recouping your capital costs, marketing, bill collection, etc.
Wilmington is a city of ~70k people, and about 2/3 of the land area is in census districts that have a poverty rate in excess of 30%, and a good part of the downtown core is in districts that have a poverty rate of around 50%. These are not people buying $150/month cable packages.
Now, say you're an enterprising new VC-funded fiber internet company. You think: you know, there's a few areas in the western part of the city and downtown that have the right combination of income level and density to support premium internet service profitably. If the city let you build in just those areas, it'd be a huge boon to competition against Comcast, because it hits them among the subset of customers that actually justify their business in the city. This is true even though only a relatively small number of customers may have an alternative to Comcast. You don't get perfect competition this way, but it weeds out a lot of the obviously bad behavior.
Instead, the city says: if you want to operate here at all, you have to operate in all the marginally profitable or outright unprofitable areas. So the returns aren't there, the VC's throw their money elsewhere, and Comcast gets to keep their de-facto monopoly.