How to overcome clock stretching on I2C
The MAX7304 is not capable of clock stretching, so the issue lies with your I²C driver in your software.

Relevant datasheet quote:


  The device’s SCL line operates only as an input. A pullup resistor is required on SCL if there are
  multiple masters on the 2-wire interface, or if the master
  in a single-master system has an open-drain SCL output.


(emphasis mine)

So it cannot pull the SCL line low. Your microcontroller peripheral is doing that because it doesn't get filled with data fast enough.



My preferred approach to get transmission times shorter, is to use DMA, which in most cases gives optimal throughput.

If DMA is not an option and you are using an interrupt driven approach, make sure that the next data to be transmitted is readily available and your interrupt is very quick to put the next data byte in the register.