Samba/CIFS/SMB/Windows File Sharing (All the same thing, more or less) is the easiest solution an should work fine.
However if the Plex buffering is caused by the network connection (and not plex doing transcoding/whatever) it won't help much. In that case, I'd go for a external HDD enclosure.
(Msybe a second NIC could help for SMB multipathing, but I doubt that. And I'd first confirm that that is actually the problem here)
If you know what you want to watch next, you could setup SyncThing (similar to dropbox) and just have a couple of Films on the linux box at a time
Given that you are running pretty standard Apps, it's fine to run without virtualization.
VMs add a useful abstraction layer between the hardware and the stuff you want to run. I tend to use VMs unless I have a reason not to.
Reasons to not use VMs are basically