Have you tried the latest driver? http://downloadcenter.intel.com/Detail_Desc.aspx?DwnldID=17509
Your connections that go to the switch are working, so this seems related to running the back-to-back connection. You said that you tried both straight-through and a crossover cables. How about trying a longer cable? Have you tried throwing in a switch in between the two connections to narrow things down to confirm whether the issue might be caused by the back-to-back connection or not?
I noticed this issue listed in the readme:
Detected Tx Unit Hang in Quad Port Adapters
-------------------------------------------
In some cases ports 3 and 4 won’t pass traffic. Ports 1 and 2 don't show
any errors and will pass traffic.
This issue MAY be resolved by updating to the latest BIOS. You can
check your system's BIOS by downloading the Linux Firmware Developer Kit
that can be obtained at http://www.linuxfirmwarekit.org/
So making sure you have the latest BIOS updates (if any) is worthwhile.
If none of the above helps, try sending an email with details about your issue to freebsd@intel.com.
Mark H