First, what is wrong with a provider charging on both sides? If Netflix wants to push terabits of data through a network, why shouldn't the network owner be able to charge Netflix for that? You baldly state "The problem..." and provide no support as to why your "problem" is just that. Given that it's the way the internet currently works, how do we know prohibiting such behavior would result in any improvement?
The first thing wrong, here, is your understanding of the issue. Netflix pays their provider already, and they push their data through their provider; that provider, then, pushes the data through the next provider, and so on, and so forth, until it reaches the intended user. In essence, it is not Netflix pushing the data through each provider, but rather each consecutive provider pushing the data to the next, and they all have peering agreements which should cover situations where there is an imbalance in traffic. None of this is, nor should be, of any concern to Netflix or the end user, so long as they are both paying their respective providers.
Post a package from the US to China. Do it. Pick a random address in China, put a random item in a box, drive to the post office, and send the box to that address. How many providers carry that box? At least 2. How many do you pay? One. We're talking about the same concept, here.
To do nothing is to be nothing.