I solved this by just pirating everything and putting it in Jellyfin with Infuse on my AppleTV. Managing profiles and parental controls (and god forbid you also want actual curation) is just totally broken if you pay money for the content, but if you pirate it, it works. Go figure. Dropped from like seven or eight streaming services at peak to I think two. It’s not worth it for the savings, though that’s a nice bonus (it all ends up in hard drives or electricity anyway, though) but it’s the only way to get sane UX. Friggin’ irritating.
It's a bit similar to them not supporting Apple TV's "Continue Watching" feature as they don't want to hand over all their watch data to Apple.
In any case, once you have a good setup the pirating UX is very hard to beat (I'm looking forward to the day that Jellyfin on tvOS has feature parity with Plex, not a big fan of Infuse personally. That's the issue to follow for that: https://github.com/jellyfin/Swiftfin/discussions/1294).
The UI is slightly janky out of the box but if you customize it it’s not bad. Key to note is that you probably want to use the “library” menu item for almost everything and drill down from there (that way you can filter by e.g. genre, or order by release date, or whatever, right up front) or else just go over to the entry for the server itself, which gets you a list of top-level items like you see in the Jellyfin web ui.
If you have much stuff at all you need to just ignore top level entries like “movies” or “tv” because (as far as I can tell) they’re just giant alphabetical lists of everything, which borders on useless. I think you can make them not show up at all. You just need search, “library”, and an entry for any server(s) you have to browse them “raw”.