Changes to SD card undone after re-mount (e.g. deleted files re-appear)

At this point I would suggest running badblocks on the SD card to see what it finds.

It sounds like the card's write logic is damaged, what you see on a mount point is simply the cached version of your data. It's supposed to be written back via sync and during umount. Seeing that you don't mention that the SD card is hanging at all suggests the damage is severe enough to create false positive write back responses or in simpler terms your disk is lying to you when it says a write is complete.

You could try toggling the write protect switch while the card is removed from the system. e.g.

  1. toggle write protect
  2. insert
  3. do something trivial
  4. unmount/eject
  5. reverse write protect
  6. rinse/repeat

In an effort to tickle the circuitry which might be caching a "stuck at 1" value. Other than that, crush it so no one else suffers any more grief and toss it.