Who pays who and how much is based on supply and demand, not anybody's ideology of what should be free. It's why sometimes I have to pay to rent a room for special events, and other times people pay me to show up to do effectively the same event.
It's like me getting a taxi from the airport to my hotel. The fare will be the same to me either way, but the driver will take me directly to my hotel if the hotel has an agreement with him, otherwise the driver will drive around aimlessly for two hours. There's nothing I can do about it even though I'm the one paying for the taxi ride because the government gave that taxi company a near monopoly in that city. Now all the taxis start taking people to the hotels that pay them on the back end and when I want to get a ride to my family's house there isn't a taxi available for an hour. When a new hotel opens with a great business model that can deliver lower prices and a great experience, they can't compete because the ride to and from there is so slow that they will get bad reviews and nobody will want to come.
It's not a perfect analogy, but the point is that places you go on the internet already pay for their own hosting and internet access. I supposedly pay my local ISP for access to any destination I want to go to on the internet, and I shouldn't be slowed down because I want to go to certain sites. ISPs should be in the business of passing packets around in the most efficient way for their customers. Giving them two sets of customers (one on the front end and one on the back) is clearly a conflict of interest.