Is there an alternative to salvagewallet that keeps account info?
This could be a solution once released:

"Add -zapwallettx function, a diagnostic tool to assist in wallet repair" - https://github.com/bitcoin/bitcoin/pull/3659