It's really not that big of a discrepancy when you do the math.
NFL Players take 48.5% of total league revenue
NBA Players take 51% of total league revenue
MLB Players take 44% of total league revenue
So yeah of course football contracts are going to be lower by player.
NFL Players = 1,696 + 320 practice squad
NBA Players = 449
MLB Players = 1,280 (including all guys on the 40 man)
Where do you think more money for NFL players is going to come from? You think the players are going to ask for like a 75% revenue cut? Lets be extremely optimistic and say the players ask for 55%.
Currently 13Billion x 48.5% = 6.3 Billion for the players
Best case scenario 13billion x 55% = 7.15 billion for the players
Not including practice squad that amounts to $845,000,000 total and about $500k more per player.
Most of that new money would go to big money guys, so the players in the NFL that are getting screwed comparatively would be making like 50K more a year. I wouldn't call that solving the discrepancy between contracts.