@anthony.grieveson and @Anonymous (I just saw your message)
Yes, unfortunately using separate filters for floors on each level is the only way I found to be able to do this. As far as I can remember, at least.
You set up a separate filter that includes all the floors for each level, then you apply the filter of the level below to every view that you need it for. In my case I only needed it for a couple of views, but in case you have a lot of levels and views, then using Dynamo to create the filters and apply them to the right views will save you some time.
Using Dynamo would also allow you to apply filters to views in addition to the filters controlled by the view templates, which Revit does not normally allow you to do.
Since this is a Revit not a Dynamo forum, it wouldn't be the place to discuss it in detail in this thread, but you could send me a private message if you need support with the Dynamo part, and I'd be happy to help. Alternatively you could also search on the dynamo forum (https://forum.dynamobim.com/) or post your question there if you don't find exactly what you're looking for.