Having the same freezing situation and it is so frustrating. I realized that is happening since kernels are .112 and .113, I had changed to .112 and looks a little more stable compared to .113 but freezes the same.
It was really fast and snappy and now is all buggy and frezzes, I can not have more that three tabs of browsers without having to reboot the ...
I also encountered this problem right after switching from windows.
Turns out that my laptop didn't have enough ram to run my stuff and Elementary OS only had ~1GB of swap allocated. This caused freezing problems.
So the solution was to increase swap size. Here are the commands I used:
create a size 16G file called swapfile in /
sudo fallocate -l 16G /...
Adding/editing greeter-setup-script=/usr/bin/numlockx on in /etc/lightdm/lightdm.conf works for me on elementary OS 5.1.6 Hera very well. https://wiki.archlinux.org/index.php/LightDM#NumLock_on_by_default confirms this solution. Just for the case someone else is looking for a way to enable NumLock in login screen on default.
if you run light-locker at one terminal lock will work ...
but running light-locker-settings give me this error , still investigating
(light-locker-settings.py:10794): Gtk-WARNING **: 18:06:34.602: Locale not supported by C library.
Using the fallback 'C' locale.