PIC32 data storage in flash change / corrupt
After further investivation and tests, it looks like Erik Friesen was right, there was too much erase/write cycles into the flash memory.

The chip used (PIC32MX470) have a minimal cell endurance of 20000 E/W cycle (found in the datasheet page 292).

In the program I found multiple calls to the configuration write that could happen many dozens of times a day, also the erace was used twice, one manually and one into NVMProgram.

To confirm the issue, I've changed the pages used in the program and read / write were working perfectly (as those pages were not used before).

The final solution was :


Cleaning the code, removing all unnecessary configuration save
Removing the double erase
Integrate the Data EEPROM Emulation library from MicroChip to extend duration even more