The problem appears to be caused by the security register setting, as I tried putting the CFM definition in another project, and got the same issue. For reference, this is the definition of the cfm (located at 0x400, and 0x10 long):
#pragma define_section cfmconfig ".cfmconfig" ".cfmconfig" ".cfmconfig" far_abs R
static __declspec(cfmconfig) uint_8 _cfm[0x10] = {
0xFFU, // NV_BACKKEY3: KEY=0xFF
0xFFU, // NV_BACKKEY2: KEY=0xFF
0xFFU, // NV_BACKKEY1: KEY=0xFF
0xFFU, // NV_BACKKEY0: KEY=0xFF
0xFFU, // NV_BACKKEY7: KEY=0xFF
0xFFU, // NV_BACKKEY6: KEY=0xFF
0xFFU, // NV_BACKKEY5: KEY=0xFF
0xFFU, // NV_BACKKEY4: KEY=0xFF
0xFFU, // NV_FPROT3: PROT=0xF8
0xFFU, // NV_FPROT2: PROT=0xFF
0xFFU, // NV_FPROT1: PROT=0xFF
0xFFU, // NV_FPROT0: PROT=0xFF
0x7FU, // NV_FSEC: KEYEN=1,MEEN=3,FSLACC=3,SEC=2
0xFFU, // NV_FOPT: ??=1,??=1,??=1,??=1,??=1,??=1,EZPORT_DIS=1,LPBOOT=1
0xFFU, // NV_FEPROT: EPROT=0xFF
0xFFU // NV_FDPROT: DPROT=0xFF
};