Maybe at the end of a contract, a player can give demands on how much a week he wants for the next few seasons (based on the current salary formula) and if you want to pay him that you pay him that. If not, cut him loose. That way, this system stays primarily to free agents and doesn't impact the players you already have on your team.