The players collectively bargain in the NFL. They’re the ones who agree to any limits (salary cap, contract terms, etc.)
If you want contracts, there has to be a players union. Simple.
by the way don’t point the finger at the NCAA for this, point it at the SEC and B1G, each of which has ZERO...