Check the I2C buses with a scope or a logic analyser. There are good one's with protocol analysers around, too.
Add instrumentation code, and check either via GPIO/scope or serial interface.
Your application might fail earlier then you think, perhaps clock issues or variable initialisations. Debuggers often do some RAM or register initialisation that you might implicitly rely on.