We've seen this situation a few times but each scenario can be different.
In one scenario, emails are created and PDF attachments deposited in a folder called \CAPITAL\EMAILOUT\USERID
The problem causing repeated emailing was that the permissions on that folder meant that a particular PC sending email did not have "rights" to move or delete the relevant files once they had been sent. So they kept being detected and sent repeatedly.
The second scenario I've come across is that Exchange servers don't like to receive a high volume of mail in a short period of time. If a user is doing something like sending a batch of 100 statements, each as a separate email, then after a half dozen or so emails Exchange may return an error message back to the program sending the mail. Presumably the error message is meant to mean "I can't send any more mail right now, I am busy. Try later" but because the error codes are simply WINSOCK errors, they are likely to be interpreted by the sending application as "cannot access email service/email connection broken" etc. So the software tries again... and again... until the mail goes out. Meanwhile, Exchange is rejecting some of the mail, sending some of it out, while sending the message back to the calling application than an error occurred - it's attempt at telling the other app that it's "busy".
The third scenario I have seen is a variation on scenario 2, whereby a security limit is placed in Exchange - not to allow more than X number of emails within Y number of minutes. Once that limit is reached, Exchange queues the messages while sending error codes back to the sending software, which the sending software interprets as failure to send. So it tries again...
My suggestion here would be to set-up a separate SMTP service on the server if possible, and let CAPITAL applications send the mail straight out, rather than route them through Exchange.