This works for the one box I am testing on (the same OP's turbot). There may be more files than needed, we were guessing and stopped when it booted.
This suggests the existing boot.img can be fixed without breaking backwards compatibility. Get the syslinux package dd boot.img /dev/sdX, mount /dev/sdX di mkdir -p di/efi/boot mv di/syslinux.cfg di/boot cp efi64/efi/syslinux.efi di/efi/boot/bootx64.efi cp di/efi/boot/syslinux.cfg di/efi/syslinux/syslinux.cfg cp di/linux di/efi/boot/ cp di/initrd.gz di/efi/boot/ resulting files: Unsure which files are needed in efi/boot and which ones are needed in efi/syslinux di/efi/ di/efi/boot di/efi/boot/bootx64.efi di/efi/boot/libutil.c32 di/efi/boot/menu.c32 di/efi/boot/ldlinux.e64 di/efi/boot/syslinux.cfg di/efi/syslinux di/efi/syslinux/menu.c32 di/efi/syslinux/ldlinux.e64 di/efi/syslinux/libutil.c32 di/efi/syslinux/syslinux.cfg