Hosting ads on your site isn't actually enough. uBlock Origin can and does block by CSS selector (and that's the default behavior if you use right-click -> Block Element).
It _does_ get pretty hard to block if your ads are bespoke native advertisements, though.
How about providing a meaningful service and request adequate compensation? Paywalls work fine for quality content. There's tons of proof that people are willing to pay for books, games, movies, and music. But by having a paywall, you lose out on search indexing. You can't have your cake and eat it.