Let me suggest Classless Themes[1][2] and its approach to theming that only switches a CSS file to transform the same HTML into multiple different themes. It's ideal for setups like that, where your user want themes, but you can't allow him to touch the HTML templates.
[1]: https://websitesfortrello.github.io/classless/ [2]: https://github.com/websitesfortrello/classless