ALM for Site Templates? Template or CSOM App?

Looking at the best way to implement a set of feature requirements for a new product being proposed by my firm. A client portal accessed through our 365 SharePoint environment.

Features:

dropbox repository which routes documents into various other libraries based on column data.
Main document library with managed metadata and metadata navigation/views.
Other various custom lists.
Workflow for notifications upon new items into some lists/libraries.
Varied permissions in each list/library.

All of the above would be relatively easy to accomplish with a custom site template. However this template could easily be used to create over 1000 sites. Each site for a different client. The big issue is that this template will forever be updated and as far as I can see applying patches to sites post creation is not officially supported and messy to achieve by other means, especially in a 365 environment.

SharePoint apps seem to offer most of the above functionality but I feel like I will spend most of my time redeveloping features already available within SharePoint.

Are SharePoint apps where I should be looking? Or is there an easier way to manage such a development process/roll-out and future upgrades?

=================

=================

=================