No, it cannot be solved from within. The past has shown that after every downturn, the entry fee (paying the training, then also paying the rating, and thereafter also paying the line training on top of it all) has risen and remains there. The market is too competetive at this level, unions seem to have been unable to stop it.
Airlines' sole purpose is to earn money. One thing that would end "paying for line training" was if passengers were to quit flying airlines that engage in this kind of scheme. Making them aware of this problem is a necessary first step.
Hey I got an idea why don't you start another thread along the idea of
Flights at risk as pilots refuse to accept 'demeaning' pay to learn
I'm sure the passengers will understand