So i'm not a real expert on this, I've only got into because both of my Arduinos died in a similar manner and now I'm trying to find a solution. What happens with the upload, does an error pop up or does the upload freeze?
So what you should do is in your Arduino IDE go to File --> Preferences ---> turn on verbose output during upload. (i'm assuming your sketches compile fine) and copy-paste all the garble you get here.
After that, I can help you with reprogramming the bootloader through your mega.