For folks in the real world, that's called "the workplace."
I've had some employers that were excellent about allowing open conversations, but none of them would have tolerated it if I'd insisted on using the company's public platform to preach my own views. Most not even if those views had been 100% in alignment with the owners' views.
That's the point.
These overgrown man-children earn significant salaries for playing a
game to entertain people who
pay money to watch the games. It is the money from those paying viewers that ultimately pays the players' salaries. When you piss off a large segment of your customer base, that's what is colloquially known as "biting the hand that feeds you." The thing is, while the players have contracts with the owners and their salaries are guaranteed, the owners don't have contracts with most of their fans (and even the fans with season tickets may not have multi-year tickets lined up). It's just not smart to piss off the people who are actually paying you.
Beyond that, it's hypocritical. However they try to portray it, it IS unpatriotic. If they want to engage in freedom of speech, they can call a press conference on a Wednesday to say what they want to say. They can write op-eds for newspapers. They can band together and hire an ad agency to promote whatever cause it is they think they're promoting. Kneeling for the national anthem is not the only avenue available to them, and it's clearly not an effective expression because it alienates more people than it resonates with.
But they don't have to reach into their own pockets to kneel.