Hmm, this looks similar to another thread on the forum: Can't boot into snapshots from GRUB menu
Like this other person, you are missing the microcode hook. There was an upstream change a couple months ago to bundle the microcode into the initramfs. See this announcement here: Arch Linux - News: mkinitcpio hook migration and early microcode
Add the microcode hook between autodetect and modconf, so the whole line looks like this:
HOOKS="base udev autodetect microcode modconf block keyboard keymap consolefont plymouth filesystems grub-btrfs-overlayfs"
Next, check in /etc/mkinitcpio.d/ to see if you have any kernel preset files in there. If you do, edit the files to remove this line:
ALL_microcode=(/boot/*-ucode.img)
Just deleting the line is fine. If it is the only line you can delete the file altogether.
After making those changes, regenerate the initramfs.
sudo mkinitcpio -P
Next, edit /etc/default/grub and add this line somewhere in the file:
GRUB_EARLY_INITRD_LINUX_STOCK=''
Regenerate the Grub configuration file.
sudo update-grub
After getting the microcode straightened out, try creating a new snapshot and test if you can boot it from Grub. If you still cannot, install the LTS kernel and test booting a snapshot with that kernel instead to see if it works.