Pessimistically, I don't think there is or would be a solution which will replace by-hand typing of HTML code without creating a mess. Look at WYSIWYG software products: for years, their advertisement tells us that finally, the new application creates a very clean code; in reality, it was crap years ago, it's still crap.
For WYSIWYG online editors (like in CMS), it's nearly the same thing, except that in those cases, I believe that they don't even care about clean code.
It seems that WYSIWYG editors are good for some sorts of things and not for others; even if there is a demand from the users, they will never be. They are good at providing a very intuitive interface for people who don't care about HTML, and don't even know what it is. It makes it more difficult to adopt them on websites which requires to be optimized, etc.
WYSIWYG editors with more features will have more difficulties to produce clean content. It's nearly the same thing for beginner programmers: they will easily create a W3C valid HTML page which contains only titles, bold and italic text, but will probably fail to make something clean and valid when trying to implement more features and interactivity.
It means that a WYSIWYG editor with only few options will be the best choice if you care about clean code and the issues of copy-paste. For example, removing the ability to change the font and to set freely the font size (except through titles) can remove problems with different fonts copy-pasted from Word (if the intent is to have an uniform font in every message).
The editor of this website is a good example, except that it has the same problem for non-IT people than PHPBB: when you click on a button, instead of seeing live what happens, you see some markdown stuff added to your plain text message.