We have different teams managing different tenants of a site, on a single AEM instance. Each team needs to do a deployment for their own tenant independently.
We have an option of going with a Maven Multi module project in a Single GIT repo, where each module corresponds to a single tenant, and we can have profile based builds to do a deployment for each tenant independently. Does ACM support profile based builds? I don't seem to find any related documentation around this.
In AEM Cloud Service, you cannot install parts of the code base, every deployment creates a new image and your complete code package has to be deployed every time. If Cloud Service is on the roadmap already, I'd try to stick to the best practices for that. Even though it might be possible for you to do this on AMS.
The ideal goal is to have automated tests, also, IMO, with multiple tenants, the sooner you catch the bugs, the better. lots of customers wait until Stage to merge all the code and deploy once, this is too late to cause issues. Deploy everything together on dev, write automated tests, catch bugs early.
I don't think the CM supports the profiles. You can create a two different release branches for each site and checkin the changes to those respective branches individually. You can use the release branch to deploy them to AMS servers using CM.
After deployment, merge those release branches back to master so your master repo would be in sync.