Yes, exactly.32 bit grub1 can load a 64 bit os. i don't see why 32 bit grub2 can't do it.
It is loading the 64bit kernel and getting it started, as you have shown, but the problem then is after the kernel is loaded and the booloader has terminated. The kernel/initramfs then has to use the EFI interface to the hardware, not the bios compatibility that it uses when booted by grub-pc.
You could see all this in the startup log dmesg - if it got far enough to produce one. It is the same sort of issue that requires disabling accelerated graphics.
So it is the difference in configuration between the current i386 and the amd64 that is the problem, not the 32/64 bit. A different 64 bit kernel configuration might work around it.
The grub2 compile defaults to 32bit for apple efi, and the grub.efi built with the x86_64 configuration is incompatible with my MacBook and refit, so the suggestion to use x86_64 for a MacBook may not have been meant for the MacBook
I had to install the gcc-multilib package to build the x86_64 on my i386 installation.
The short answer is that the current grub.efi works for i386 kernel and the i386 installation.
but it does not work with the AMD64 installation.
The grub source built wit ./configure --with-platform=efi
will build for the default target i386 for intel macs.
You can still use the grub.efi to load eternal i386 kernels.
Your efforts to get it going have been very useful in exposing the 64 bit issue, I will look a bit more at that, but I doubt if I can take it much further, rapidly getting out of my depth here.
Sorry you had all that trouble, your problem was probably entirely due to the amd64 system, I was hoping to get your system running with grub.efi, it really does work very well.
I will add a note to my grub2 EFI thread
grub2 EFI boot loader internal/external booting