There was an interesting decentralized project that I found out about here on hn that has an interesting solution to that.
It's called Aether, and it only supports text. Each node stores 6 months of all posts. Every person votes for their own moderators of communities so you can basically choose your own moderation filter that you get.
I didn't personally like the idea that it has amnesia after 6 months, but surely eventually clients would support saving your own threads to keep locally.
So you could subscribe to your own trusted adblocking/flagging list.
Then the problem instead becomes what is a valid comment, and a valid commenter (identity). Otherwise the vast majority of comments will be: WaNt A BiGgEr SoMeThInG? Go tO wWw.S0mEgR0$$sItE.cOm
There should be at least basic formatting filter that would block 1 MB comments or clearly non human written comments. This won't stop the spammers, of course. It should be time consuming to create a user id. It should be anonymous, but it should take a few minutes of your time (not your CPU time) to generate a valid user id. once this is done, it'll be easy to spot one spammer's comment, find all others (since comments are signed with ed25519) and dump them all. The spammers then won't be able to delegate the work to scripts.
How could you possibly expect to control people saying things about your blog on a remote webserver?
There is no solution that is not worse than the speech.
This is not a problem that needs solving.