Vendors have firmware bugs similar to this quite often, and usually you'd see the OS failing suddenly for no good reason. Falling back to PCI IO access for the config space will probably only allowing boot-through, but any time something allocates memory into that region, it won't be going to DRAM... leading to data corruption.
If you enable above 4GB decoding (and it successfully boots), there could be a change to the ACPI tables that the firmware generates.
In any case, we'll need to find a way to let FreeBSD know not to use that memory region for allocations.