Mainly because Microsoft wants to have "connected standby": the CPU is running in a low power mode (not powered off like "old" S3 sleep), can be turned on periodically and can turn on other devices even when the computer is "sleeping".
My Zen2 based Lenovo laptop has 6-7 hours of battery when doing basic tasks in both Windows and Linux, but sleep on Linux lasts a week while on Windows it's empty in 24 hours.
> Mainly because Microsoft wants to have "connected standby"...
And that is OK, as long as they provide a way for you to disable it. I do not want my laptop to be doing things when I put it in sleep mode. Nothing at all. Save battery life above all else when sleeping. But Microsoft does not appear to provide a way to do that. At least none that I can see.
And the funny thing is that with Windows 10 they completely abandoned all the software that could take advantage of connected standby
Macs have that too, just implemented well. In addition, CPUs with connected standby don’t have the normal sleep so even on linux they run in connected standby. Maybe its less buggy in your case? Consider yourself lucky, lots of people encounter problems with sleep on linux