Nochmal zur Erklärung:

Das Original I2C-Slave Programm ist nicht so ausgelegt, dass man einfach I2C-Befehle nacheinander senden kann.
Stattdessen muss man z.B. auch auf Watchdog-Requests reagieren.

Bei einem geeigneten Master kommt es nicht zu "falschen" Reaktionen des Slaves.

M.E. kann man das auch in deinem Fall NICHT auf die Geschwindigkeit des I2C-Busses zurückführen:
Die Slave-Master-Kombinationen funktionieren z.B. mit der M32 als Master und einem passenden Programm mit 100kHz ohne wesentliche Übertragungsfehler.