James Reade at the International Journal of Sports Finance Blog:
Players generate marginal benefits to the sports teams they play for – better players generate bigger benefits. If sports teams are restricted to pay at most x for players, then what happens for players that contribute a larger benefit than the player who the market values at x (likely your average player)? The top clubs will want these players, but only being able to pay x, they will find other ways to attract that player to their team. In rugby league’s Super League, methods used include paying the wives/girlfriends of players to “work” behind the club bar, or in the club shop, for an hour a month, and paying a somewhat large hourly rate. I’m sure there are plenty of stories in North American sports leagues.
Competitive imbalance derives from demand imbalance. When one team, compared to other teams in a league, can generate a lot more revenue because of the size of the fan base, the wealth of the fan base, the willingness-to-pay of the fan base, etc, then competitive imbalance follows. Salary caps do nothing to equalize the market sizes but are instead a way to minimize the costs teams have to pay to keep and attract players. So, IMHO, it is not the salary cap of the NFL that makes it such a balanced league but it's the way it generates revenue: collectively through its national TV contract.
Now this is not to say that the NFL model is stable. It isn't because there are still differences in market size and those differences lead league owners to look for ways to make an extra buck.