At the very least, I still don't know why 2 of the same wallets with the same tx history have different balances.
if you compare the tx history in multibit line by line you will probably find that in one of them some tx are missing, probably the
oldest ones, so start comparing with the oldest tx to save time. This is because it did not completely sync the block chain. The method I suggested was to force a fresh wallet with these keys to sync from the beginning (or from the earliest time you used these keys onward).
Older versions of Multibit allowed you to manually specify a date from where to sync when resetting the block chain, newer versions are trying to determine this automatically from the time of the earliest transaction in the wallet and I suspect this algorithm is flawed, especially in the presence of imported keys. From looking at the code I got the impression it is trying very very hard to avoid unnecessarily syncing too far back. Therefore my suggestion to make a fresh wallet with imported keys that have explicitly set their creation time early enough to enforce a sync over the needed time, no matter what.
The numbers on blockchain.info should show you how many BTC you really have, these numbers and the tx history shown there can be regarded as authoritative. Your goal is to bring your Multibit wallet into a state where it will show the exact same numbers. Any other versions of the same Multibit wallet showing different numbers can be ignored because its not correctly synced and missing some tx and if it refuses to sync then its broken.
Therefore import the keys (with their creation dates set
early enough) into a brand new empty wallet and let it sync. Then it will show the exact same balance and same tx history as blockchain.info
and these numbers will be authoritative!
If your wallet was incompletely synced all the time you probably thought you had more BTC than you really had. Thats probably also the reason the last tx did not go through, You and Multibit both believed you still owned these coins and tried to spend them but you have spent them
long ago already and neither you nor Multibit can remember (because at some earlier time the sync must have been messed up) and the tx was not accepted by the network.