Okay - so I've come across a 'fix' for my problem.
I don't think everyone is suffering from exactly the same problem.
For some people - just fully updating Windows fixes their issues.
Other people find success following installing the latest Surface firmware (https://www.microsoft.com/en-us/download/details.aspx?id=55484).
My problem - I was hibernating while the machine was under load - event viewer was calling it a 'critical thermal event'.
User 'SnakeJam' posted the fix which worked for me:
*****
Start an elevated command prompt (in the search bar on the task bar type "cmd" and right click "command prompt" and select "run as administrator")
At the prompt type "powercfg /h /type reduced" (exactly that text without the quotes) - this command actually reduces the size of the hiberfile so that traditional hibernation doesn't happen and it is used only for hiberboot. Alternately you can turn off hibernation
entirely by typing "powercfg /h off"
If you used the first command to change to the reduced hiberfile size, you'll get a response showing the new size of the hiberfile. If you instead turned it off, you won't get any confirmation
Close the command prompt window.
*****
I used "powercfg /h off" - which turns off hibernation completely. I've not had a random hibernation since. This is good enough for me - until Microsoft can come up with something better!