Когда то очень давно я похожую проблему решил так, запустил виртуальную машину, подключил ее сеть через сетевой мост к моей локальной сети, в ней подключение было без vpn (ведь с точки зрения сети виртуальная машина просто отдельно стоящая машина, а vpn поднят на одной моей), в этой машине поднимается socks5 прокси на основе ssh, с помощью подключения ssh -D1080, а в браузере были настроены правила автовыбора прокси с помощью расширения FoxyProxy (сейчас у меня отдельный браузер со своим профилем запущен)
Чтобы ресурсы лишние не тратить я пользовался собственной linux сборкой (по факту это был подправленный initramfs, считанные мегабайты ram), а так как windows была 32-битная, я пользовался проектом colinux (это примерно то что сейчас представляет майкрософтовский wsl без виртуализации, но у wsl нет гибких настроек сети)
p.s. На linux подобная задача решается штатными инструментами cgroup и виртуалка не понадобится, можно каждому приложению выделить свою cgroup со своими сетевыми правилами.