You haven't understood, how I2C works. Try this version:
long EEPROMReadlong(int deviceaddress, unsigned int address )
{
long four, three, two, one;
Wire.beginTransmission(deviceaddress);
Wire.write((int)(address >> 8)); // MSB
Wire.write((int)(address & 0xFF)); // LSB
if (Wire.endTransmission()) return -1;
//Read the 4 bytes from the eeprom memory.
if (Wire.requestFrom(deviceaddress, 4) == 4) {
uint8_t i;
uint32_t v = 0;
for (i = 0; i < 4; i++) {
uint32_t r = Wire.read();
v |= r << ((3-i) * 8);
}
return v;
} else {
return -1;
}
}