If anyone finds this in the future.
As the above bug report explains, the e1000 driver seems to cause issues on Windows VMs. The VirtIO driver is needed right now to keep your Windows VM stable, until the e1000 driver is debugged and fixed. Unfortunately this driver doesn't come with windows installations so you'll need to add it yourself, but its easy to do.
Additional Info:
https://wiki.freebsd.org/bhyve/Windows
As with anything there a multiple ways to do this but below is the method I took.
I downloaded the following three drivers to test:
Windows 10: virtio-win-0.1.118.iso
Others Windows OS: virtio-win-0.1.96.iso
Latest driver as of 6/5/17: virtio-win-0.1.137.iso
To download:
-Web browse to:
https://fedorapeople.org/groups/virt/virtio-win/direct-downloads/archive-virtio/
-Click on the directory of the driver you want to download.
-Select the virtio-win-x.x.xxx.iso file for the driver, above are the drivers I selected to try.
-Place this downloaded .iso file on your zpool of the FreeNAS host, I had a smb share I moved it to.
-Go to your Windows VM in the FreeNAS gui, click Devices.
-Change the NIC type to VirtIO, save.
-Add a CD-ROM, select the .iso you previously placed on your zpool, save.
-Boot the VM.
-VNC to your Windows VM and open Device Manager.
-Select the ethernet controller that doesn't have a driver (it should have a little ! triangle).
-Right click and install driver.
-Point the driver install to your CD-ROM on your VM.
-Proceed with the driver install.
-Set the IP for the VM again on the new interface.
-Done
The VMs I was having problems with have been running clean for a couple hours. I will let them run over night to confirm but it's looking good.
I ran some stress test programs, iperf, web brower and nothing has locked up the VM yet.
Also, virtio-win-0.1.137 seemed to allow for higher throughput on Windows Server 2012.