Is there a supported way in Google Analytics to track a campaign without having to use query string parameters.
In Analytics you can tag a link to your site with que
There is a function _setAllowAnchor in the Trackin API that allows you to specify the tags in the anchor text instead of as query parameters.
pageTracker._setAllowAnchor(true);
So you can use http://www.stackoverflow.com/#utm_source=expertexchange and GA will understand it. This way you can avoid the SEO problem.
For the Twitter problem, I suggest you the method described in post Tracking Twitter and Shorten URLs in Google Analytics.