check hdd for errors
Also run temperature monitors and CPU thread load monitors.
I run them all the time due to noticing issues with similar things.
At one point I had that happening, and it was due to CPU overheat.
I replaces the fan, and now no more overheating and it just works.