That's one of the many things Tasker does for me, with a quite simple profile:
- Condition: App (select your browser, reader, etc., multiple apps can be selected simultaneously)
- Task: Display-Timeout (all sliders to max = never)
Optionally, you also can adjust screen brightness. Then, as soon as one of the selected apps is running in the foreground, that action triggers – the screen won't turn off anymore. When you bring another app in front which was not selected with your condition, Tasker reverts to the previous state automatically.
Of course, there are also several apps available just doing that and nothing else; but having one app (tasker) that can doing this and so much more, I forgot about them long ago...