A cron job to check the lid state and re-issue a suspend command.
sudo crontab -e
Add this
* * * * * /bin/bash -c 'lid_state=$(cat /proc/acpi/button/lid/LID0/state); case $lid_state in *closed*) systemctl suspend ;; esac'
No more stupid laptop waking up forever and wasting battery while the lid is closed