i know you said you did a factory reinstall, but did you do a factory reset from the phone itself? i had this issue with my sgs2 and fixed it by factory reset from the phone(reset should have a clean 4.01 install)
http://www.newegg.com/Product/Product.aspx?SID=lMQoeH_LEeGjb0LSzz4jvw0&AID=10440897&PID=1225267&Item=N82E16822145473&nm_mc=AFC-C8Junction&cm_mmc=AFC-C8Junction-_-cables-_-na-_-na
use code: EMCNFND45 for $70 off stackable
i keep mine in my pocket at the gym, unless im doing decline or situps(learned that one the hard way, dropped a db on the screen when it slid out of my pocket). finding sweat pants that have big pockets seems to be really hard for some reason.
newegg has the Mushkin Chronos Deluxe 240GB back in stock for anyone whose been waiting to stock to replenish.
$273.99 free shipping
http://www.newegg.com/Product/Product.aspx?Item=N82E16820226226