It would be good to post some more pictures detailing the construction of the Z, the stepper motors, and the stepper driver to help with the diagnostics.
I will go out on a limb here and say that the problem is that somehow, the torque on the Z motor is not sufficient to hold its position.
One way this can happen is that sometimes, the stepper motor drivers will reduce the standby current in the motor if it isn't being called on to run for a while. When this happens, then in theory, the Z motor might not have enough torque to hold its position and the screw could start sliding down.
The other thing that could be happening, is that if the motor is in fact getting full current, it could be overheating. Similar things could be going on in the driver board.
Since the problem is intermittent, then hot electronics might make sense as a possible culprit. In that case, put some fans on the driver and motor and see if that helps.
Of course this is a complete guess, but fans are cheap.