Is a 1.8v supply too low for driving a long bus?
In I2C, it is typically the "1" that is noise prone due to the RC/pull-up.  You can make the channel more robust by increasing the pull-up strength (i.e., reduce R value).  You could also place a pull-up on both ends of the line.  Another idea might be to run your logic at 1.8V, but have your pull-ups referenced to a higher voltage to give you better noise immunity.  Do you need to run at 400kHz?  Could you accomplish the same task with a lower clock rate?  If you are using ribbon cable, interleaving GND will go a long way to alleviating noise in low-speed digital.  It also gives you better impedance control.

What aggressor circuits are nearby?  What environment is this going into?