If you have a bank feed or import your statements then I would suggest you do not mark the invoices as paid from the purchase screen, just enter the invoices then tag them from the banking page.
I posted this some time ago and more lately this reply from Glenn in a somewhat related thread would solve this issue and the related topics that are commonly started.
There shouldn’t be duplicate transactions on a bank account with a feed (or with any sort of active import really) and the tagging from the purchase entry screen should have a better workflow and not just blindly create the transaction (or there at least be an option to disallow it/ask first).