Could you change the bootloader to look for some kind of header or footer byte sequence in the hex file (that could be appended or pre-pended to the file in the build process)? Unless I misunderstand where this delay occurs...
lots of development boards use a simple switch or removable jumper to activate the bootloader or not on power-up or reset. While it does take up a digital input pin, it does eliminate a delay on programs starting.
1. if you double click the reset button, it waits a LOOONG time for a serial.
I think that it would be possible to write a sketch that updated the bootloader. I mean why not? Its just writing to flash. The problem with this idea is that if the sketch was interrupted mid-write your board would be bricked -- you'd have to buy a $20 ICSP to recover it. So maybe its not worth the support calls it would generate. What do you think?