It’s technically possible to bifurcate an adblocker like that but it’s an ugly setup and you would only do it if a gun was held to your head by an ad monopoly.
That said, it may be a good idea in the current situation.
^ This is really stretching the meaning of ‘VPN’!
The only two things you cannot do is declare them as static rules (well you can but not unlimited), and look and modify every header before it hits the browser.
And yes, you could have an app with a browser extension like Adblock already did for years without issues.
You could also have only a browser extension and have all the user functionality you have now, the only difference being it just slightly slower, and you still having the network load the ads (but not the page you’re on).
A bit annoying? Sure. But it’s hardly the severe problem it’s being made out to be.
It's not just bandwidth, though. It's also about not allowing ad companies to collect data about you such as which sites you view.
Not showing ads is important, but it's only half the battle.
Which is a lot.
And even if you somehow hit this number, afterwards you can still intercept every request before the user sees it to modify headers or remove ad content.
Is it annoying? Sure. But again, you can technically still do everything you could before.
You just can’t do it before the request hits the browser, so you can’t pretend to be a vpn inside the browser.
Blocking or redirecting all requests, based on dynamic values, adapting all headers through webrequest and not showing any ads and removing them from the page is still possible with service workers and content scripts.
The only issue is with regards to “static” rules and modifying them before they hit the browser. After that you can still do everything you could before. The only issue is bandwidth, but this should always have been an app to intercept all network requests instead of something inside the browser (like a vpn adblocker)