Arduino reset when serial buffer overflows?

No, the arduino doesn't reset when the serial buffer overflows. I took a look at your code and didn't see anything that would obviously cause it to reboot. However, it's just slightly possible that your robbing the device of power during transmission. I say this because I had an arduino that was rebooting (I didn't know, it was hidden away) when it was transmitting. Seems the XBee was sucking the life out of the power supply and lowering the voltage enough to cause a reboot periodically and unpredictably. A new power supply fixed this problem.