Whilst the Neymar transfer fee is crazy, there is something to be said for the logic of allowing a player to move for an agreed sum once a fee has been met (if the player wants to).. but rather than (somewhat) arbitrary buy-out fees, I reckon the fee should be set at a value that accurately reflects the players value to the football club. This is best measured by looking at wages.
So, I'd propose that a player's buy-out fee could be triggered by a preset multiple (let's say x 2 or x 3) of the remaining cost of his contract.
i.e. Phil signed a new contract worth a rumoured an approximate £8mil in wages per year for the next 5 years. That means we currently stand to pay out £40 million to him. I don't think there'd be anything unreasonable about valuing him at say £80 mil (x 2 ) this summer. Next year his cost to us over the contract would be £32 mil and so his buyout could be £64 million.
The potential downside would be that older players (29+) who are probably on larger wages might be less attractive for teams to buy, but that's up to the agents etc to time their contracts right and I'm sure there's an easy enough work around such as reducing the multiple to say 1.5 of the remaining contract value after a certain age - I think in some American sports once a certain tenure is reached there is more freedom on what can be paid etc..
Anyway - it'd have the instant benefit of putting an actual price on every player and once that price is met a player can move if he wishes to...