You could try this: How to disable wifi power save to prevent disconnects
Note: Since that post its added into the launcher. But you could try setting it manually and testing if there is a change in stability.
Otherwise: [USB-ETH] How to transfer files if you have unstable wifi
(also implemented in newer os, no need to do all that things just set the gateway from the launcher settings)
EDIT: I just remembered something, try to connect it with usb eth and ssh to check the processes with top when it freezes, I had this Upower hoarding 100% cpu happening to me in the past