

You say that even automount causes problems. You should look for a backup HDD before data loss. You should read out the SMART values.
Either way, disconnect the external HDD from the PC and check whether shutdown still causes problems. At least I know the problem myself from problems with external storage.
Either way, you can only guess without any information. Logs would be more helpful.
(systemd-analyze blame)
journalctl -b -1
systemctl --type=mount --all
systemctl --type=service --all |grep running
Btw Months ago… At that time it wasn’t that long ago that the big DE’s started to implement wayland in the first place to get rid of xorg. In the meantime, wayland is running pretty well.