Again, you're talking about changing the ActivityPub protocol. Objects aren't published the way you think they are. It's more like batch processing. This simply can't be done at scale without massive investment.
Edit: ActivityPub is closer to an RSS Feed than it is to sending out what you publish to each server. It makes it's lsit available to others (who don't have this filter you're talking about) and they grab the whole thing. They don't scan each item and grab it as they go. And again, that scanning is done by them, not the hosting server. The feed is open by default. There is no real authentication and identity at the level you'd require to transform this into an entirely different product (a CMS).