Further correspondance with Freescale reveals an app note called "EEPROM emulation with MPC5500 family microcontrollers".
It contains an obfuscated, highly questionable algoritm where you use the whole 16k segment as a huge FIFO, with another 16k segment as "swap-in" when the first one is filled. Equals a minimum of 32k of flash.
Even if someone would manage to implement that algoritm together with necessary safety mechanisms, such as CRC and block replication, the access time of the data will still be laughable. As it is impossible to index or sort the data in any way, the only search algoritm that can be used is a linear one. Meaning that in worst case you'll have to go through (16k - 8) bytes of data to find the one you are looking for. Needless to say, this can't be used in any application with the faintest hint of real-time requirements.
A few years back I did actually evaluate a very similar kind of algoritm for a S12 C32, with CRC and block replication. Even though I actually managed to write one that could be regarded as somewhat safe, the conclusion was that the algoritm was way too slow to be used in the real world. And then the S12 has 512 bytes large segments and not 16k!!!
Also, at the whole idea of having duplicates of the same data all over the flash segement, my guts scream out "don't do it!". MISRA-C also has a rule against using the same memory cell for unrelated purposes.
I'm sorry to say it, but the method proposed in that app note can only be used in hobbyist projects. No serious developer would even consider using it.