I was looking into things yesterday, and my best idea on how to fix it is to raise the minimum number of players in a roster who have been with the club for more than 5 years, from the current 8 (and that requirement is even only in international games) to maybe 15, across the board. It would force clubs to raise players, not just amass money and buy away the good ones. If you look at current Bayern, I think only Lahm, Müller and Schweinsteiger actually came through the Bayern youth program. The rest (Neuer, Götze, Lewandowski, Ribery, Robben etc etc) were simply bought from clubs who had raised them.