If your board needs custom build, it's probably because there's no SPI flash with the bootloader. The board can't describe itself.
This could be solved https://sd-card-images.johang.se/ style: single kernel+rootfs OS image, with the small board-specific bootloader + dtb, which you concatenate to the OS image.
The majority of ARM SBCs can boot UEFI (TianoCore) as a u-boot payload, there are ports for many SoCs/platforms. Raspberry Pi has a port. Libre.computer ships Amlogic and Rockchip with UEFI out of the box.
Nobody just usually bothers because modern u-boot handles all aspects of boot process, incl. display and user interaction. Unless you want Windows on ARM, or want to use beefy server/desktop hardware (ARM non-SBC, non-embedded) with external PCI-e boards which may want to run its embedded .efi rom, you probably don't want UEFI.