I2C read commands don't work for multiple bytes. This is likely to do with the well documented I2C clock stretching issue. A potential fix is to bit-bang I2C out of the same pins using the pigpio library.