An option is to change the credential in the workflow with a system account right before the long wait. You will still have audit trails to know who was the user starting the workflow even if the end of the workflow is run with another account.
Not ideal but should work.