Everybody who works with esp8266 in Arduino IDE knows that Wire library has glitches: prove, prove and etc. So I decided to spend some time and rewrite the native library code. It works OK now. I've tested the library at 100KHz I2C speed/80MHz ESP.
The code on github.
I2C bus specification here.