I very often put my lunch (whether it's a sandwich or nukeable leftovers or whatever) in a flat square tupperware-type container, and then put that inside a freezer bag if I'm particularly worried about leaks. I toss the whole package into my bike messenger bag and go! No crushing, crumbling, smooshing or leaks. I've even taken soup in leftover soup containers from chinese restaurants.
I sometimes put my whole lunch in a stack of those cheap storage containers, like the Glad ones that are designed to be thrown away after a few uses-- man, I never throw those things away! I put sandwich in one, cut-up fruit or veggie in one, chips or crackers in one and then put the stack in my bag. Or you could put it in an insulated lunch bag with a shoulder strap. There might even be room for that thermos in there! Any food is portable if you pack it right.