This might be more of a comment than an answer, but it got too big. My bad. :-(
Unity was once based on Mutter, and gained in performance by switching to Compiz. Look at the happy comments there. :-) So I think it's not that simple; the situation has proved trickier than the way you're positing it.
When you say "all I can think of is it must be Compiz", it kinda sounds lke a presumpton. Phoronix and others have written about much better performance from Compiz without Unity. Unity makes high demands, whatever the backend. That seems to be the biggest issue.
A standalone rewrite might cost years of effort and then of optimizing. (And definitely be pilloried for NIH syndrome.) If you have particular ideas for implementing this, a demo in code would be best, 'cause imagined rewrites are usually chimerical. 'Start clean' isn't enough of a specification to create a different, better, OpenGL compositor and WM. :-/ There's a good Joel On Software article about the perils of starting from scratch, that could apply here.
For games, I think the Unity devs are still working out un-redirecting windows, that is, not passing them through Compiz, but bypassing that layer. You might search Launchpad and Planet Ubuntu for 'unredirect'. I don't know what the near future holds, but it seems to be one of their areas of focus right now.