Yes you totally correct. Publisher has a feature called loop and reduce which does exactly what you say, it will loop over for example a dimension and create smaller applications with only a sub-set of data related to that dimension value
Another way to limit data access in a application would be section access. Which could also be an approuch that would suit your need. Then you only have one application but apply row level security within that single application. There is great material on the community if you do a search for section access.
Then of course you use both loop & reduce and section access together to create for example region specific applications out of a master application and then apply row level security in that region specific application.