DISCLAIMER: I had to remove links due to reputation system. I cann provide further replies with the links I wanted to show (12 at the moment).
Are you using a laptop?
About Windows as a virtualization host: Sorry, I have no idea. Maybe you can have some luck with "XenGT", but I have zero idea
You would be able to use PCI Passthrough at least under Linux, but Optimus is a big show-stopper in this. There's a possibility if you have a video output connected to the Nvidia GPU (some laptops have it), but you'd lose portability in exchange of this feature (and this sucks a lot in a laptop).
There's Intel GVT-d|s|g "vGPU" (Intel insists in calling it Graphics Virtualization Technology because Nvidia used vGPU term in their proprietary solution, but I find vGPU a lot easier to remember) in Linux, this is a nice start. The code got merged in Linux kernel and it seems relevant stuff to vanilla Linux kernel itself too (not 100% sure). The relevant code still didn't get merged to upstream repositories of Qemu and Xen hypervisor (there are Intel forks of Xen and Qemu with GVT-g support, but no news about merging since more than TWO years.
Nvidia has a similar technology, they call it vGPU and is part of NVIDIA GRID. Unfortunately, this technology is very proprietary and it seems to be only offered to servers. I'm not sure if Quadro drivers support something similar and if someone was able to use these drivers on consumer hardware, I hope someone can explain more about this.
There's has been many heroes (one at reddit, other's at Red Hat's vfio-users mailing list trying to make PCI Passthrough over Intel GVT (vGPU), but I didn't see any success stories about it.
I saw people having issues with GVT-g alone on reddit. I saw an early 2017 guide by kraxel and himself mentions at early 2017 about locally displaying vGPU output too.
Anyway, I'll do some more research and after some experiments, I'll write a detailled e-mail to Intel GVT-g mailing list.