I'm on 5.0.0 and I legit haven't noticed a difference. If I run out of RAM without swap the system freezes and if I have swap then the system freezes when both are full. The only reliable solution is having a RAM+swap usage graph on my screen at all times and then closing stuff manually.
You probably won't until the distro you use (or you manually) set up something other than the default OOM killer.
You probably have too much swap. More than ~10 sec * your I/O speed (so let's say 512M-1G) is probably the max for the reasons you mentioned.
https://github.com/facebookincubator/oomd/blob/master/README...
and here's a less complicated, but similar proactive daemon:
https://github.com/rfjakob/earlyoom/blob/master/README.md