a) there are more than enough companies that would be willing to provide that as a service. Any larger country will simply be very big depending on the maximum zoom level (there is a reason why most tile service providers don't pre-render high zoom levels),
b) the more sensible approach would be to use pre-generated vector tiles, for example from https://openmaptiles.org/
We switched last year from the Google Maps API to hosting our own pre-generated vector tiles from Open Map Tiles in a docker image (using the mapbox api, and we're hosted somewhere in aws (not my expertise there - I get lost in the acronyms)). It seems to strike a good balance of managing costs + controlling our own stuff while relieving us of the burden of generating our own vector tiles. I could not find great docs on generating them ourselves, and as a newbie to that world I quickly gave up.
Now we just have to periodically take a fresh pull of the tile package, so our tiles aren't too out of date.