Here is a teaser on the upcoming lib, these begin() lines have a couple new elements which some might spot. Analyzer plots go with the respective lines. Of interest is the bottom wave in each plot. That indicates I2C ISR activity. Also of interest is how similar the SDA/SCL waves are. Regardless of control method the I2C peripheral appears to be bottlenecking the throughput. This is likely the highest I2C performance that these interfaces can manage.
I have other improvements also, but I'm still testing it all, so no release just yet.
Code:
Wire.begin(I2C_MASTER, 0x00, I2C_PINS_18_19, I2C_PULLUP_EXT, I2C_RATE_3000, I2C_OP_MODE_ISR);

Code:
Wire.begin(I2C_MASTER, 0x00, I2C_PINS_18_19, I2C_PULLUP_EXT, I2C_RATE_3000, I2C_OP_MODE_DMA);