DrAzzy:
I agree with your conclusions (except the signed/unsigned part, since you're using bytes and ints, not some 12-bit signed datatype) - BUT as a sanity check, I would really recommend reading the EEPROM with an ISP programmer, to verify that the problem is in the bootloader.
Yes, I need to find a 100mF cap to make my "Arduino As ISP" work because for whatever reason I cannot get Dragon to work properly under OSX But I think checking via ISP is the way to go. Thanks
-HH