In theory, they could do something like this: All monies paid to players go into a common fund, which is managed by the player's association. Each player gets a small stipend from this fund for entertainment and housing. The rest remains in the fund, and the player gets a statement every year showing how much they earned from playing and how much from investing. Hopefully, after a few years, the investing is making more than the playing, showing the player that investing is good.
Then upon retirement, the following happens. 2 million is set aside and put into a fund. From that fund 5% is paid every year to the player, with the rest being reinvested. Then the rest they can choose to either remove from the fund, or keep in the fund and get earnings payments, or maybe take some out and leave the rest. The hope being that they saw their statements and know that investing is good.
But even if they don't, they still get that 5%, which starts at $100K/yr and in theory goes up with inflation, which should be more than sufficient to keep them from being totally broke.
They could do the same for football players, who tend to have the same issue.