I've been running 2 Ubuntu servers running 3 gaming VMs. I agree to a certain extent that hardware choice is key. I got burned by AMD GPUs not resetting so switched to NVidia GPUs.
Didn't have issues for almost a year.
Rule of the thumb for me is: AMD GPU for host, NVidia for guests. I use AMD GPUs for host because open source drivers are awesome and makes kernel/version updating easy. NVidia for guests is no brainer since they don't have PCIe reset issues. For motherboard, pick one that has good IOMMU groupings, usually x<3|4|5>70 for AM4 or x299 for Intel, or go Threadripper.