Politics and a big near-monopoly (BT).
Kill the monopoly and you get better speeds for most but some areas massively left behind where not profitable (read anywhere rural) Politicians don't like 'excluded' people as it makes embarrassing newspaper stories, so they stick with the awful monopoly incumbent and add rules to make sure people in the sticks get coverage. Downside is people in big towns and cities have to effectively subsidise all this plus live with crap service due to lack of competition.