Don't make that much? $100,000 a year for the rest of your life once you retire, plus a bang up healthcare plan isn't a lot?
What does lots of games have to do with it? Players want to play, rather than sitting on the bench. Also, when you don't play, you train and practice.
You think a UFC fighter who fights three times a year has 362 days off? Being a pro athlete is essentially a 24/7 thing. There's no such as off season nowadays. An athlete has to be in peak condition year round. Off season only means you practice and train more frequent than you do during the season. This is not just to keep your place on the roster, but to prolong your career. The better physical condition, the longer your body will last.
Baseball players (other than pitchers) can play 182 games + post season because they don't take the physical damage you take in MMA, boxing, football, hockey, rugby, etc.
I don't know what the minimum salary is in MLB, but it's at least more than $500,000. In a ten-year career you will have made at least $10 million. After that you get $100,000 a year for the rest of your life. And you are fully insured.
You are right, it's all because of collective bargaining. And it goes without saying. No employers throws out money he or she doesn't have to. It's business, not charity.
What I would like to see is that the UFC puts 10% of the revenue into a pension plan.