I think you're right. For me personally, if a site was toxic enough with ads (eg: the reason I started using an adblocker originally) I'd just completely avoid it. I did originally try that, but in particular "chum boxes" started appearing everywhere on more sites than I could remember to avoid and that was the last straw. The easiest solution was an ad blocker, and unfortunately for publishers, it's just easier to block all ads everywhere than try to be selective and only block annoying ones.
If enough sites started using anti-adblock techniques with toxic ads, my next step would be a 'site blocker' plugin that would effectively eradicate it from the internet for me. This is kind of the nuclear option. No links from others sites, no showing up in search results. The technology exists already for blocking adult sites: the thing missing is the ability to add to your block list from a search result page or on the site itself.
The next logical extension to that is sharing block lists among users, and projects that maintain block lists you can subscribe to.
It actually would be nice if there's a way to notify the site when you were blocking them, such as your browser hitting `/.well-known/eradicated?origin=http://page/containing/link`.