It's really an issue with how the fediverse handles communities. On Reddit each sub had its own moderation/governance structure which I think fits the role of an "instance" best. Here, each instance has a variety of communities which may overlap with other instance.
I.e. banning an instance for having community X impacts community Z who may also dislike X.
Without ripping up the floorboards, I suspect the answer is instances having community-level granularity in blocking. So one can block: The_Donald@*, *@sh.itjust.works, or most narrowly [email protected]
"We are not in the business of giving that [Reddit's content] away for free."
but...you are spez. That's what social media is. A useful medium with a value determined by the size of its network. Restricting access makes your network less valuable.
Honestly treating hosting like for-profit media company is the biggest delusion of the 2010s-20s. It really only works in a system like email (see:fediverse) or maybe a wikipedia and Internet Archive nonprofit model.