I still don't understand why someone can't simply create a compiler that treats a 68k executable and libraries as intermediate code and creates a compiled native CF version.
There is no way to tell which part of the binary is code and which data. If you translate data in similar manner you'll just corrupt it.
It is also extremely difficult if not impossible to handle code that calculates checksum of the code itself or does dynamic relocation and/or modification to the code before execution (not all self modifying code is bad, patching the code before running it is quite common).
In short, it cannot be done.