It just happens to be, that all (e)eproms natural erased state reads out as '1' .. This is due design of the hardware. If there's any other value, then the chip has not been erased properly.
In fact, even though you might just want to write a new value into Eeprom byte, in backgroud there's (AFAK) is still a mandatory erase cycle required. Nowdays this erase cycle is usually well hidden and it's not necessary to initiate manually. So if you want to store (say $55) to a byte of eeprom, beheind the scenes the event is:
Old value $89 -> Erase ($ff) -> write ($55)
And the basic rule of eeproms is, that it's not Writing the 0_es that wears down the chip, but the limitations of erase cycles. In the very begin of the EEprom technology (with like 100 or 1000 cycles) it was recommended not to erase entire byte, but to write down the necessary 0:s, and/or do manual write/erace balancing across the memory.
I think Motorola (nowdays Freescale, that is) did have some excellent articles of this one concerning their early Eeprom chips.