The core devs have said previously that they don't support the idea of a "Long-Term Support" version. I assume that this is primarily due to the amount of work involved as the newer code evolves.

But I have also thought that maintaining the "penultimate branch" (previous release branch) should be doable. This would mean that at any given time, there would be work done on three code branches simultaneously: The current release branch (security, bugfixes), the previous release branch (security, the occasional major bugfix), and the development branch (trunk -- new features).

It wouldn't give an 18 month window for testing/updating sites, but it would at least give a 3-4 month window (based on the current development cycle), which is better than nothing. When a new version came out, you could stay on the previous version while you tested your plugins and themes against the newest stable release, only upgrading your production sites after you verified functionality. If anything was broken, you'd have time to contact plugin authors or contractors to work on fixes against the new core version, while still being comfortable that you would get security updates on your live sites.

Betas and Release Candidates are great, but the testing window for those is typically pretty short. I can see how it would be impractical for somebody maintaining dozens of client sites to do property testing in the time between the first RC and the official release of a new version.

I might also suggest that they should add some more committers to the core team, even if they limited some them to just backporting security updates to the previous version branch. Surely they could recruit a couple of trusted people that they could notify when they make security or major-bugfix changes in the main code, and have them backport them to the previous version. There would be plenty of volunteers for such duty (heck, I'd do it).