When you write ADDR=$07 or ADDR=$7, it store $0007 to the word variable in one shot...If you prefer in the MSB and LSB. have Look to your EEPROM datasheet...
http://ww1.microchip.com/downloads/e...doc/21754E.pdf

Look Figure 6-1. What happen if your address variable is a byte? Yes it miss the LowByte of the address. Using a word sized variable, nothing is missing.

Nothing else to worry about, I2CREAD/WRITE will do the job for you.

P.S. : Welcome on the forum Yet another Canadian Woohoo !!!