After investigating a bit more, the issue turned out to be related to the Project Settings / Player / Run in Background setting.
Not sure if this a new change (I'm on 2020.1.12f1), but clicking on the inspector now deselects the game view and marks play mode as running in background which in turn stops Super Text Mesh from updating. Specifcally GetDeltaTime2 returns 0f in this state which blocks the running ReadOutText coroutine. Since the rest of game mode still runs in this situation I think the expected behaviour is probably to always return the engine reported delta time regardless of whether the app is backgrounded.