First of all, extend the time before your computer goes to sleep. You can find that in the energy options of Windows.
EG loses network connections (and that includes "local" connections that utilize network sockets) as soon as the computer goes to sleep, and since "orphaned" workspace servers terminate, EG needs to start a new one.
Next, store intermediate datasets in a place aside from WORK. Create a directory in your Users directory, and define a libname called USER for it in your autoexec (eg in code sent to the workspace server when a connection is established).
USER is some kind of "permanent WORK". When such a library is defined, all single-level datasets will be created (and searched for) there instead of WORK, but will not be deleted at end of session.