Yes, I've run into a similar problem on two separate installs. The first time I edited /etc/default/grub to remove "quiet" and "splash" from boot, it worked fine. At some point, some process rebuilt the grub config again and I had your exact problem. Subsequent attempts to run update-grub always fail with a syntax error warning, even if I put back the default /etc/default/grub:
Adding boot menu entry for EFI firmware configuration
error: syntax error.
error: Incorrect command.
error: syntax error.
Syntax error at line 180
Syntax errors are detected in generated GRUB config file.
Ensure that there are no errors in /etc/default/grub
and /etc/grub.d/* files or please file a bug report with
/boot/grub/grub.cfg.new file attached.
I'm a long time Solaris guy, including the latest versions, so I'm quite familiar with working with ZFS. I also run it (not on root) on production CentOS systems. It's been stable there, but again--no root pool.
As far as fixing it, as I recall here's how to get it back if there is an old or new grub.cfg from a failed or previous attempt at running update-grub.
Let's just say your pool is on sda.
/boot/grub is on sda2 by default on my systems.
Boot the live CD/USB and go into the "try it" option, however it's worded, but don't install.
Open a command prompt, then type "mount /dev/sda2 /mnt".
cd /mnt, then hopefully you'll find another grub.cfg that worked.
For me, it's the largest file--the new ones are usually about half the original (original 7.1K) and they simply don't work. Copy it to grub.cfg and reboot.
This sounds similar to the bug below, but installing gawk didn't fix it for me. It was supposedly fixed, and may not be the real issue anyway:
https://bugs.launchpad.net/ubuntu/+source/grub2/+bug/1834095