Here are some brief answers:
Plugin outlets are a far better way to extend things, they shouldn’t be broken by changes made to Discourse.
Overriding a template will “replace” it. Plugin outlets are simply points in the page that you can “insert” content into. If you want to add content, a plugin outlet might be enough. Overriding templates should always be a last resort.
No, I don’t think so
You can’t really “extend” the templates, only replace them. The “how to customise discourse templates” link you posted has an example, but plugin outlets would be better.
The easiest way is through CSS changes in a theme as you mentioned. You could have a look at this theme, which @joebuhlig uses to hide a number of discourse features:
Hope that helps a bit - if you can describe which bit of discourse you want to change then it will be easier for people to give more specific advice.