First - I would stick with your sainsmart board at all times. It's just a better, more common controller board. Spend the time getting that to work before ordering anything else. That's my opinion at least.
I know it sucks that you lose all settings during a re-flash, but like I say, you'll need to know them eventually if you're serious about 3D printing. At some point you're going to need to reflash your firmware.
A LOT of people have reported issues with marlin when it's compiled with any Arduino IDE later than 1.0.5. You MUST use this 1.0.5 to compile if you want to use Marlin:
http://arduino.googlecode.com/files/...r2-windows.exe. There's a good chance some of your issues are just from garbled code somewhere because you used latest. Also, I highly recommend you wipe the EEPROM before uploading any new firmware versions. There is already a script for this in "File->Examples->EEPROM" in the Arduino IDE program.
Lastly, if you establish a decent understanding of your firmware settings then I highly recommend you check out Repetier. It's free, and is less outdated than Marlin. Plus, it has a great little configuration tool that makes it easy to set up:
http://www.repetier.com/firmware/v092/. Aaaaaaand you can use the latest Arduino IDE to compile/upload it.