As mentioned in another thread I'm in the middle of a migration from 16F87x to 18Fxx2 and changing the crystal from 12MHz to 20 MHz.

My experience is:

DEFINE I2C_SLOW 1
DEFINE I2C_SCLOUT 1

does not solve the problem
in addition a pull-up is required at least on the data line.

I have put pull-ups on both the clock and data line and now it works fine.