Just guessing. Sometimes armbian-install seem to fail to populate /boot or the UUID of the nvme is wrong.
Try this: clear mtd and nvme, boot from fresh image from microsd, maybe remove emmc if not needed.
Do armbian-install and let it move OS to nvme and flash spi.
Do not reboot. Mount the nvme again somewhere and check if /boot is populated. If not, copy everything manually from microsd/boot to nvme/boot, then use lsblk or similar command to get the uuid of the nvme and edit the freshly copied armbianEnv.txt to match the uuid.
If /boot on nvme is populated already make sure the uuid is correct.
Then shutdown, unplug, remove sd and power up again.
For best chances debugging boot issues set verbosity to 7 in armbianEnv.txt and check the video at https://debug.armbian.de