I have one app in particular (Sonos Controller) that doesn't work well with custom hosts files that are large in size 9+ MB. Other apps eg. eBay app relies on some internal adnetwork lookup and therefore doesn't even load.
So the question is, can you force a certain app in some way to use a specific hosts file? Maybe via symlinking or a firewall?
At the moment I have set up Tasker to copy a temporary clean hosts file to \etc\hosts while the app loads. On exit, Tasker will restore the custom hosts file. This works, but seems like a rather crude way to do it.
EDIT: The reason Sonos Controller app is not working well with custom hosts file, is that it does lookups in the hosts file every time you click on anything.