Previously my new Arch install wasn't seen by the motherboard's UEFI, so the only way I could boot into it was via another distro's bootloader. Here's how I fixed EFI boot for both Arch and for Slackware, with the efi-directory adjusted to where the efi partition is mounted (/boot in Arch), and the bootloader-id set to the distro name you want to use.
That's essentially the command I used for Arch. It's the efibootmgr back end that caused me the problem. I only had one bootloader too, so there was no confusion.
That will generate EFI/BOOT/BOOTX64.EFI which a UEFI bios will just go for, bypassing EFI boot vars in NVRAM (the switch seems like it's a misnomer, but this is also how you'd set up a removable drive to boot). I actually think this is more reliable (and damn easy to fix for that matter), just inflexible for booting from other fixed drives (at least on my board). That's what a bootloader is for anyway, though. It's how I would have done it with legacy too... not by changing the boot drive in the BIOS. If I wanted some other 'dozy OS I'd add it to my bootloader too. Hell, I still haven't forgotten the concept of Master/Slave and "Primary boot drive" (e.g. ide0)