You could start for example by compiling the code with a constant with an obvious value, like 0xAB , 0xBC, 0xCD, 0xDE ... then compile again with slightly different values ... all being the same, only those 4 bytes should be changed in the compiled code.
Now you can make your own programmer ... make a gadget in which you upload the compiled code, and then add a button ... push the button and the programmer increments the value before sending the data to the microcontroller.
Alternatively, you could have a predefined value that would normally be not expected in the eeprom or the flash area, for example 0xFFFFFFFF and if you start the micro with this value, the micro uses ADC to read a voltage or something from one or two pins. You could have a gadget with a bunch of resistors or a DAC ... insert into your pcb, start it up, wait 1s or so for the micro to update its internal value and then you can move on