It sounds great until you have a few hundred pages (e.g. a blog). Nobody wants to manually update layout changes or fix navigation items across so many pages.
Of course there are plenty of static site generators that will help with that.
For (internal) web applications, frameworks still win, because the difficult part isn't layout rendering, but the dynamic interactions on the screen. I don't think reloading the whole page on every click, even if it's super fast, is the way to go.
I too have been thinking a lot about these same things. Great article, didn’t know about the SEO benefits. We should always strive to suppress needless overhead, if nothing else it decreases the potential attack surface.
I've created a couple of production web sites that way. I used htp, which allows me to create multiple pages with the same layout by using a mechanism similar to C's #include. This is used at development time, so the Web pages generated are all static (no server-side includes), but by editing a single file and "recompiling" I can change the layout, look and feel of the entire web site.