What about the Workflow Action Set Workflow Status (It is a O365 action) I do not know if you have it on Premise.
Set workflow status will update the current workflow's status. I have two workflows associated with a single list: one is Nintex Workflow and other is a SharePoint State machine workflow. From the Nintex workflow, I want to update the status of the custom sharepoint workflow associated with that item.
I would replace the SharePoint State Machine with a Nintex one. It might be a bit of work at first but it would give you a more stable and flexible solution overall.
Then you could use the first workflow to update a field in the item and have the state machine wait for the field change to set the next state.
I would say it's best that Workflows change their own state/status in general, good practice.