I have not been able to successfully reproduce this.
I did notice a couple of things about this workflow that I don't like (which might explain this but not sure).
Here's what I did:
1. Open up existing GL transaction I had entered as a test.
2. Clear reference, switch debits and credits
3. Post as new
It didn't post multiple times.
I then tried to do the same with a description in place
Same (correct) result.
I did notice that this didn't follow separation of duties rules which strikes me as possibly asking for trouble.
Best Wishes,
Chris Travers