It is likely the OS that is clearing those tabs from memory. The app may not get any notifications. IOS does not have virtual memory that can be saved to storage and restores on request. IPadOS does now have that on the newer M1 processor versions. They also have 8GB of RAM so they are less likely to need to purge or swap.
Still not clear why the app can't save the page itself to storage on every page load, then let OS clear the memory and not notify anyone, then if it's purged, reload from local file
That sounds like the app would need to implement their own RAM paging and that is a complicated and error prone endeavor and likely not worth the effort for he developer. I don't even know if an iOS app would have the system hooks to be able to do it.
Because it's some opaque component, and it's the only thing you can use on iOS. Firefox and chrome are just chrome/shells around safari's engine and all suffer from this problem.