The company that I work for suffers from a lot of people adblocking (due to the market we're in) so we offer an exceptionally high value subscription service, for a few dollars a month (between $2 and $5 depending on the payment period) any user can get an advertisement free experience across almost every website that we operate (over 100 websites)
and there's a bunch more extra features that premium users gain access to... However I know of so many many users that visit our websites frequently (some that use our websites for hours every day) who use adblock and flat out refuse to pay the few dollars to view our websites without adverts legitimately.
There really is no magic solution, the sort of people that are happy to adblock websites are the sort of people that just don't care. Why aren't adverts a good business model? People get the content with no direct financial cost (that's what they want) and the companies operating the websites get the revenue they need to exist. A lot of people are happy to view adverts if it pays for the content that they consume: I am! I don't block adverts. If a website has advertisements that I don't like I find another website to use, or just go without.
Are shops relying on their customer's benevolence because people pay for the things that they want? There's a direct cost associated with delivering content to users on a website (which is incurred regardless of the advertisements viewed), there's a direct cost associated with delivering a loaf of bread to a customer of a shop, why is it completely unacceptable for someone to steal bread from a shop but the same is okay online? This isn't like media piracy, there is a direct cost associated with delivering content online.