Raspberry Pi: disable UART output from U-Boot & GRUB

I’m using a Raspberry Pi 3 model B with Leap 15.2. I need to use the hardware UART to interface with an external peripheral. I disabled the kernel serial console by removing the console= parameter in /etc/default/grub, and re-assigned the hardware UART to the GPIO pins by disabling Bluetooth. However, I still get output on the UART from U-Boot and GRUB. The peripheral gets confused with this random input, and its response tends to interrupt the U-Boot autoboot.

It seems to me that there are two ways around this:

  1. Disable UART in U-Boot
  2. Boot the kernel directly (i.e. remove U-Boot/GRUB from the process)

Frankly, I’m not sure how to do either. #1 seems to be preferable, since #2 may break when the kernel/distribution updates (it requires modifying config.txt which explicitly warns against modification). But from my reading (e.g. here) it seems like one has to patch/re-build U-Boot to disable UART.

Is there a way to accomplish either of these, or is there a third option? For example, can the UART be initialized from the booted system instead of in config.txt?