Really bad comments are not the root of the problem. Simply having large number of mediocre comments crowds out and discourages thoughtful discussion from starting at all.
I'd say:
* create some real cost to making comments
* make bad comments disappear/not display at all with time
* make things less democratic -- to encourage good behavior identify users who have this behavior and make this behavior more prominent programmaticly
I think in general you already have most of a filter in that bad comments get pushed down and the lower sections of comments seem to be read much less often.