After erase you should see all ones, each bit of flash in erased sector should read as =1. Each byte in flash sector should read as =0xFF. Old data is lost. Yes, to reprogram just 8 bytes you need to erase whole sector.
Maybe CW debugger confused you? For faster operation this debugger by default caches contents of NV memory and doesn't update it from flash, EEPROM etc. It may look as if data didn't change after erase. You may change this behaviour going to Multilink->Debugging memory map menu and checking update-on-halt checkboxes to make debugger updating data from MCU memory.