Short version of a very complex issue: A 64-bit OS on a 64-bit x86 CPU can run both 64-bit processes and 32-bit processes. 64-bit processes have certain advantages, such as being able to access more than 4 gigs of virtual address space and use of twice as many registers. As you've already noticed, your Mac can do this just fine.
Even on a 64-bit OS, the kernel process itself might very well run in 32-bit mode. This is usually not a problem - and can even be an advantage, from a driver perspective - but sometimes the kernel process needs more than 4 gig memory. The main reason for this is that the kernel uses 64 bytes in the kernel for each page of 4KB RAM in use by the system. Some quick math shows that when you reach 256GB of main memory, a 32bit kernel will run out. In practice it will run out before that, because there are other things it needs to do besides keeping track of RAM, but not terribly long before that.
As you've already figured out, the reason your Mac can't run a 64bit kernel is due to the version of EFI - the firmware - in use by the machine. There's nothing you can do about that, but OTOH, I doubt you'll be upgrading that machine with 256 GB RAM any time soon. Just don't bother with it.