So I just installed Zorin OS 16 Core a few weeks ago, was pretty happily surprised that it supported not only secure boot and full disk encryption properly, but also had Nvidia binary drivers and the proper signatures for them for secure boot so everything actually worked.
Then I got sick of fighting with Gnome and the "taskbar" not being movable from the primary display, which is a very bad thing on an OLED display like I'm using for my actual primary display, and decided to give the XFCE4 variant a try, installing xubuntu-desktop. Afterwards I also installed some software updates that were available.
Now I also get the hwmatch + no server available -errors on boot, and get thrown to grub afterwards. Neither of these were a thing before today.
This really makes me question the reliability of Zorin if within a week or two of installing the boot breaks.
I've also got a dual boot setup with Windows 10, but they're on 2 separate NVMe drives and I use EFI boot menu to choose what to boot. Before now that worked fine.
So is this a thing that people should expect from Zorin? What is breaking, and how does one resolve it so that there is no errors that require user input, and I don't get thrown to grub to choose some boot options again?
Zorin OS Lite is XFCE4 (4.16) Desktop. It may be worthwhile to try that out rather than installing the Xubuntu Desktop onto Zorin.
I am notorious for installing other desktops onto Zorin OS. At some points having Plasma, Enlightenment, Cinnamon, Mate, Gnome, XFCE and a couple others all installed at once.
It is one of the reasons I choose Zorin OS, that it is durable enough that I can really take a hammer to the system with low risk.
However... Nothing is ever 100% guaranteed. It looks like, from what you describe, your grub directory was corrupted by an incomplete file.
I would suggest trying Boot Repair, if installing Zorin OS Lite is not an option (I agree with you, by the way, and only use Zorin OS Lite):
You might first try booting to Recovery Menu, dropping to prompt and running:
sudo nano /etc/default/grub
Add the line GRUB_GFXPAYLOAD_LINUX=keep and then save and exit. Run sudo update-grub
And test boot. I have never tried this, so I am not sure it will properly work... But it is the easiest option.
I had the same issue after fresh installation.
The problem is, that grub is not able to read theme from encrypted disk.
So I commented (added # before line) in /etc/default/grub:
#GRUB_THEME=/usr/share/grub/themes/zorin/theme.txt and the error disappeared.