“Most people want to change the header and footer. Since a forum is usually part of a larger site, there needs to be an easy way to change these areas”
I disagree, I think this intention is the result of the current forum suites, that have such convoluted ways of theming that people just try to make the smallest changes possible that allow them some distinct look (phpBB, for example, has over 50 html files to edit, none of which are clear over what they do besides overall_header.html and overall_footer.html, resulting in only the header and footer being easier to change).
From what I see in your suggestions, all of these changes are possible with a custom theme (which can be made simply by copying the existing theme and modifying the code). By making a theme that structurally resembles your other software's themes, you can simply use your site's stylesheet instead of the one built in.
“To prevent overwrites during upgrades, two approaches could be used, or both. [...]”
If instead of editing the default theme you make a copy to a new folder it will be kept between upgrades.
“(e.g., for links pushing back to the main site, etc.)”
I like this, as people sometimes like to include links, but I think this could be made in a more simple way, by having a simple navigation.txt formatted as
% navigation.txt http://example.com/ Link Name http://camendesign.com Another Link %
And if this existed, an actual navigation would be appended to the page (with its structure defined in the theme, in the same way the about.html is included only if it exists).
Remember that the idea of this theming system is to be able to edit and preview the changes without having to run any apache server and to be able to edit it as easily as if it was an html page. Having to resort to includes would break this.
Furthermore, it still wouldn't integrate at all with other systems because these either have arbitrary php code that wouldn't work here (Wordpress, for example) or arbitrary styling code that would break the HTML (phpBB, for example), thus having to make you always have to change each software's theme individually.
“You could do similar to Phorum and allow color code changes to be made in a settings file.”
This is already made by the form of override stylesheets you can use. I don't know if an example one which changes the colors is included by default, but including one isn't something hard to make nonetheless, and would be as easy to use as a settings file.