Why should anyone pay a fee to re-transmit free-to-air TV signals? I understand that cable channels rely on subscription fees to stay in business, but we're talking about the major networks - ABC, CBS, NBC, FOX and PBS - that are broadcast across 94% of the United States at no charge.
Take PBS out of the equation, because they don't get retransmission fees. They're carried under the must-carry doctrine, meaning the cable company has to carry the local PBS station, but in exchange the station doesn't get any direct financial consideration.
Regarding the other networks, Congress gave broadcasters two choices: must-carry or retransmission consent. Most broadcasters have opted for retransmission consent, because they see it as a source of revenue that offsets their declining advertising dollars. The economics of the broadcast business have changed and it's debatable that it could survive without this source of revenue. Actually it's debatable that it will survive at all in the long term, in its current form, even with retransmission revenue. Broadcasters will continue to be squeezed financially, retransmission fees won't plug the gap indefinitely, and their ultimate future is probably one of even more reality TV crap (it's cheap to produce) and re-runs. Quality original content will be pay-to-play, with the exception of PBS, which will probably manage to survive on the goodwill of its benefactors (here's hoping), though even that isn't a guaranteed thing.
As far as why Congress set up this ecosystem, you'd have to ask them. They were trying to fix a lot of problems in the marketplace, MSOs were refusing to carry local channels or re-selling them for profit, which was a problem. As is usually the case, Congress managed to create more problems than they solved, and the legislation was actually passed over GHWB's veto.