I had this issue once. It's likely due to Mail sending a "delete" message for every version of your composed message that is being replaced by a new one. GMail interprets this message incorrectly and moves the outdated draft to the trash instead of deleting it. Other IMAP servers don't make this error.
Instead of not saving drafts on the server, which solves the issue at the cost of not having drafts shown accross multiple devices or on the web interface, I modified my gmail settings so that deleted messages are immediately deleted instead of being moved to the trash.
With that setting, if you delete a message from Mail, it should be ok as Mail moves it to the trash anyway. However, if you delete it from gmail.com, it will be irreversible. So this workaround can be used only if you don't use gmail.com to manage emails.