I'm going to try and answer all three parts of your post.
Firstly, I agree with you on the length of quotes. It's annoying for me as well. However, there is no way to stop it without having an edit button which would allow us to remove bits of text from other peoples posts. That isn't possible at the moment so we'll just have to live with it until then.
Secondly, I think that if someone has posted something they've seen before, or a question that has been asked multiple times before, then it should be dealt with accordingly. If it's obvious spam then report it. Otherwise, reply politely explaining why its not needed again and link them to previous threads where their questions were answered. This gives them the chance to learn what was said previously and also allows others who read those threads later on to find out quickly whether the information they're looking for has already been given.
Thirdly, reporting is important but only when done correctly. You need to make sure that you give enough detail in order for moderators to understand exactly what needs doing. A quick 'this thread is shit' doesn't cut it unfortunately - even though I wish it did sometimes! Please provide details such as links to similar topics etc...