Use 74LCX245 level transceiver for SPI / I²C
I don't know of any way to use a '245 chip to do level translation for I2C. As you point out, I2C doesn't include any signal that can be used to control the DIRection pin of the '245.

The canonical method for I2C level translation looks something like this:



When the 5 V side pulls low, the 3 V side is pulled low through the body diode of the FET. When the 3 V side is pulled low, the FETs act in common-gate configuration to pull the 5 V side low. Selection of the FETs is fairly fussy, so don't just stick in any old FETs you have lying around.

A google search for "I2C level translator" also gives several hits from NXP, TI, Maxim (and probably others) showing that they make chips specially for this function. These chips basically include the circuit above with some "speed-up" circuit to enable reaching higher bus speeds.