Two further questions:1. Does the problem go away when the laptop is running from battery power and is not connected to anything else except the FTDI cable?2. I presume the contactor has a mains-voltage coil and you are using a relay to drive the coil. What is the power source for the relay: is it the same 5V supply from the FTDI cable, or is it a separate power supply? If it is a separate power supply, what sort, and does it have a connection to mains ground or not?I'm wondering if you have a ground loop through mains ground.
It sounds like your FTDI cable is sensitive to noise. I suspect that noise on the USB cable is being fed into the Rx pin of the atmega328, and the resulting interrupts @ 115200b were overwhelming the cpu.You didn't say whether you disconnected the DTR signal or not originally to get rid of the problem. Any noise on the DTR signal will cause the atmega to reset.The more usual way of programming a standalone atmega328 is via ICSP. Then you don't need an FTDI cable, so you are not vulnerable to noise on DTR or RxD.