I'm using a Mega as an I2C slave and I'm using 4.7k pullups on my bus. Gonna agree with pylon here that 1k is likely too low.
If you're still getting a full bus reported by a scan after increasing the pullups, the next step is to disconnect all devices and do a scan. If there's still a full bus, I'd be eyeing the Mega itself as possibly having a malfunctioning I2C module. If the bus reads empty, add one device at a time and scan to see if the problem suddenly pops back up, at which point the most recently added device becomes suspect.