One of the biggest flaws of the CMS space is assuming or requiring that they are completely in control of the application. When in reality, all I need is a CMS for is a subset of pages. At most it can be in control of a subset of domains -- but never all of them.
For example, a common requirement is a faq-like page, a blog section and easily being able to edit other public pages (about, team, contact, index, etc.). Then the real bread and butter of the application is behind some sort of login wall or is all internal and requires custom code and logic. I shouldn't have to stand up two applications to achieve this (increasing application maintenance by an order of magnitude in the process), fight the cms, or roll my own every time.
Ideally I should be able to tell a CMS a single page it can control (or subset of domains), and it takes the existing content and allows editing and saving of it.
Start with that idea, then add premium features like easy a/b testing.
edit... Also, in my experience CMS is a race to the bottom when it comes to client quality. You end up making very little money per project as the person looking for a wordpress/cms solution is either pinching pennies or just plain cheap. The real money clients come from those looking for real solutions (which are almost always custom solutions) to enhance their business' bottom line, not give it a crappy web presence that wont change for the next 10 years.
I think your approach is good, but LocomotiveCMS takes a different (I think also very valid) approach. A single LocomotiveCMS instance is designed to serve the static pages for dozens or even hundreds of sites. You keep the meat of your application in the platform that fits the project (rails, node, clojure, whatever) and let LocomotiveCMS handle the plain content pages for all of your sites. You can get the content into your app using JSON APIs or you can proxy pass to the pages themselves.
So it's true that you have to spin up two apps the first time, but after that, you can keep using the same instance to add pages for as many sites as you want. You provide the app, LocomotiveCMS provides tools for your clients to edit and create the static pages.