tx pin active while loading program

If you're going to be reprogramming your device with any sort of regularity, I'd say throw an optoisolator, or other sort of relay, on the tx line between the arduino and your serial device, and have that controlled by some other pin.

If you're only reprogamming it until you've got it debugged (and you're not programming it while it's in some sort of enclosure) best thing to do is just disconnect the tx line before reprogramming. It's a pain, but you're stuck with it. ...unless you move from arduino to sanguino, or you want to move your device over to a software serial connection.