How to upload a sketch to Arduino if it goes to deep sleep mode quickly
Hold the reset button while you start the upload. Wait until you upload first tries to connect to the Arduino, then release the reset. 

If you can't get that to work, the next option is to load another Arduino with the ArduinoISP example sketch, connect the two as described in the comments, and use the 2nd Arduino to program yours. 

Update:


  Would another Arduino overcome this problem?


Ok, then it's time for plan B. Using a programmer (real, or simulated by another Arduino) doesn't depend on the 'failing' Arduino's bootloadloader but uses a direct (SPI) interface to program it. This article has more information.