As for apps being suspended, most apps are suspended when there's nothing to do. If a graphical application is minimised so it doesn't have to redraw the screen then it should either be doing nothing or occasionally polling a server if that's it's design.
Web browsers are an interesting corner case as web sites often have JavaScript that wants to run all the time and there's some trade-off between doing what the web site wants and saving CPU/energy. But that's probably not going to be an OS issue for PureOS but an Epiphany browser issue.
https://developer.apple.com/documentation/uikit/app_and_envi...
https://developer.android.com/guide/components/activities/ac...
I'm not an app expert nor an expert on GNOME development either, but I got a bit sceptical when I read their app example code, python with GNOME, neither is famous for being snappy.
For the moment the Librem 5 seems to be using apps designed to work on PC desktops but at lower resolutions.
To be able to conserve battery apps works differently than programs, apps can be suspended. That is usually the problem with normal programs, they are not developed with battery conservation in mind.
I wonder how Librem have solved this, perhaps in their scheduler, or intends to solve this in the future.
https://developer.puri.sm/Librem5/Apps/Guides/Design/Constra...