Small Update: I could fix the issue by moving the PCI->Map little early in the initialization but couldn't root cause it yet.
Could be that the portion of the address space that PciIo->Map() can deal with gets fragmented in the part of code that you have now eliminated, by moving the call earlier.