I think the easy answer to that is "because it is not as trivial as forking a small app that could run off of a git repo", it's a whole operating system involving a lot of infrastructure and a huge community around it. It might get forked, but people fight probably because they see value in what exists and would rather try and advocate for whatever direction they believe is best. Those who would disagree are not very different, just passive.
An even more trivial alternative is settling for "whatever the founder wants" and seeing the ability to fork as the final justification for this mentality. This is a lot less work, but also can amount to doing nothing, even if shitty decisions are being made. Even if that is your stance, you will have to fight for it. The alternative is everyone just sit idly and pretend not to have opinions. I'd much rather embrace the chaos that comes with collaboration and let it find proper processes to manifest.
I guess it can be simple like that when you are the maintainer. It is definetly not as simple when there are many of them. Of course you can run it like that and many do, but the whole mentality is pretty limited.
My statement is not that you have to do whatever anyone asks in your project that you maintain. My statement is that a community that contributes towards a project has a say in it. You might want to ignore it, handle it BDFL-style, politely and cynically decline, whatever.
Not really about what is the absolute correct answer. Our values are clearly different. More like what I believe works best in the long term.