I've got another idea. The problem might be related to the interrupt mitigation feature. In order to test you'll have to change in file RealtekRTL8111.cpp the line
Let's see if it works! I had this idea while peeking into the chip's configuration of the Win7 driver and it uses 0.
I tried it. If anything, it makes things marginally slower.
BTW, if I force link speed to 100mbit/sec with your driver, I get 7-8MB/sec. Does that give you any ideas?