That seems strange I’m running a pfSense VM on proxmox with a Core i3 5010u. The VM has 2 cores and 1GB ram and I’m getting around 500 Mbit on my Gigabit cable in download. I only disabled hardware checksum on the pfSense side. What CPU exactly do you have? Also make sure to set the CPU type for the OPNsense to „host“. That helped quite a bit for me.
I did something similar. I used Proxmox and then installed PfSense as a virtual machine. You might want to look into OPNsense and PfSense. There are addons for both that do the same as AdGuard and are free and open source. I had good experiences with pfBlocker