@wissox
As @Kcmatt7 said, it all has to do with salary caps, revenue sharing, and those things.
MLB does not have a salary cap. As a result, the MLB has team salaries ranging from Boston at $228M and Tampa Bay at a little under $70M.
In the NFL, the salary cap is about $177M, with teams spending about that much - there is some complex accounting that goes into cap hits, etc., but the Giants can't spend three times what the Jaguars can.
In the NBA, there is both a salary cap and a salary floor. The NFL has a cap, but no floor, but probably has the best revenue sharing plan of all the major sports (in large part because the television deals are all national deals).
The reason basketball and football can do this is revenue sharing. In those leagues, the money goes into the same pot, so as the pot grows larger, everyone gets an equal piece of an ever growing pie.
Baseball is not like that. They have only limited revenue sharing, which means that a team like the Yankees, operating in the largest market, can capture a much larger payout from its television deal than teams like Tampa, KC and Milwaukee can. The NBA dealt with this problem by tying TV money into BRI (basketball related income) and making that a part of their revenue sharing plan. Since only a percentage of BRI goes to player salaries, the NBA basically guarantees profitability.
To really make things fair, you have to have revenue sharing, a salary cap and a salary floor. The NBA does this best, tying the cap and floor to BRI. As that income goes up, the players share in the increased profits. The NFL has the best revenue sharing, but doesn't share that revenue with the players (why the NFLPA is incredibly weak compared to MLBPA and NBPA).
Baseball probably won't get a cap until they get comprehensive revenue sharing to ensure that a team like Tampa Bay won't get buried by the cap, but they also need a floor to make sure an owner won't just pocket the revenue instead of spending it on salary.