I'm planning to build a VM server then put CHR on it among other things.
1. Would it be better to have hardware interfaces as PCIE passthrough, or bridged via virtio?
PCI Passthru is a way faster solution for VM networking.
With bridging - every packet needs at least 2 CPU cycle (one in host, one in VM),
using passthru the NIC is directly handled by VM
There is a middle way in between: SR-IOV and virtual functions.
with this, the NIC internally "splitted" to sub-interfaces and that sub-interface can be passed to VM
2. If it's better to have PCIe passthrough, is there a list somewhere of supported Ethernet/SFP+ cards?
Well, look for the RouterOS ethernet compatibility list, OR mount a VM's image in linux, and check the list of kernel modules listed in /lib/modules directory...