I am using HIDUINO as my firmware (flashing via dfu-programmer), and to upload sketch I need to re-flash original firmware, upload sketch and then flash HIDUINO again.
Is there a way to flash sketches without reflashing original firmware?
I assume you mean you are reprogramming the USB interface chip, which means you no longer have a UART pathway through to the ATMega328P. If so then yes, you can provide your own USB interface in parallel by connecting an FT232 (or similar) breakout board direct to the ATMega328P chip just like you would on a breadboard Arduino:
The capacitor is required with later versions of
avrdude and newer versions of the Arduino IDE since the DTR signal is now held LOW rather than being pulsed as it used to be. This is to combat a change in the FTDI drivers that meant that the DTR stopped being driven at all and broke the auto-reset facility. So now we need a capacitor to convert a constant LOW into a short low-going pulse to initiate a reset without locking it all up.