@johnny I think that for #NixOS we need an additional concept of splitting the "system" and the "application".
I did use nixos containers in the past, all in the big system configuration, this is inflexible, as you describe in your post. And I think your approach would have solved this.
Seems to me that there is this more generic need behind this: Handle the core system on the one end, and the application on the other end. And being able to update each of them individually.