Do not overwrite mempool transactions with equivalent double-spends

#4450 introduced a check for non-equivalent double spends and relaying, but for *equivalent* double spends it changed existing behaviour by still calling mempool.addUnchecked() on them. This breaks mempool consistency (detected using -checkmempool after a few days of running), which could be exploited to crash miner's nodes.