While you can run it at 3V 3 it is:-
- running outside the specification for a 16MHz clock.
- you need to disconnect any 3v3 peripherals when you are uploading code because then the USB runs it off 5V
Could it be that you have fried the TX during upload?