Star players immediately start taking the max -$1.
It'd have to be a big gap between max deals and the next-highest amount you could sign for, which would likely create its own issues. I'd say make the max a higher percentage of the total cap. Wouldn't completely eliminate the problem, but it'd make it a lot tougher to assemble a decent cast around multiple max guys.
Honestly I think this situation is more of an artifact of the exploding cap, and GS managing to lock up Curry so cheaply years ago, than the max contracts. If Curry signed for the max or we were under last year's cap number, this situation almost certainly doesn't happen.