The pay based on performance idea is probably the worst idea I have heard in a while.
I can see it now:
"Romo... don't throw to TO! Throw to me! He got the last one and I need to feed my children!"
And what about guys like Pat McQ? You want him to sit, learn, and develop. But with no PT, is he on welfare?
I liked the tiered idea I read about one time:
There are is still a contract, but with tiered pay scales. For instance:
Level 1: $10 million a season
Level 2: $9 million a season
Level 3: $8 million a season
...
Level 20: $200,000 a season
Something along those lines.
That places a maximum on what a team can spend. If your team offers you a level 1 contract, no one can outbid you. The system also had some deal about teams that resign their own players have a level benefit (e.g., you resign with your team at a level 8 contract, but they are only charged a level 7 contract). The concept with that was to help build continuity among teams.
So, at the end of your contract, you might get some offers:
Team A: 3 years at level 5 and 2 years at level 4... a 5 year contract.
Team B: 3 years at level 4... a 3 year contract
Team C: 2 years at level 6, 1 year at level 5, 1 year at level 4, 1 year at level 3
And so on.
The draft picks work similarly:
There are pay tiers based on draft position. All contracts are for 3 years (teams can renegotiate if they wish). This prevents high draft picks of gouging a team and forcing them to start the rookie b/c of the money invested in them. And draft picks were either not counted under the cap or charged a fractional rate (or something like that).
The benefit of this system is that it provides a per player cap, but also forces relative values to be appreciated. It also places a premium on continuity.