How to increase ON Time of a Relay?
Possible? Definately. There are many solutions, although not all of them make sense in all cases.

Whatever you decide to do, I would heavily suggest to put the delay circuitry on the input side of the ULQ2003: It is by far easier to build up the circuit you want on lower-power side (I guess the input is logic-level/CMOS/TTL/etc.). That is the reason why one uses a driver or transistor in the first place. To deliver more power than your control circuit is designed for.

The way I would approach the problem is the following: Use a transistor or switch to quickly charge up a capacitor, then slowly discharge it via a large resistor. Connect a comparator to the circuit, and whenever the voltage at the capacitor is above a threshold set by a voltage divider, the output becomes active. When the capacitor is discharged to some level, the threshold is not reached anymore and the ouput turns off. This output can be directly connected to the input of the ULQ.

Well, that might sound a little complicated. Let's draw a schematic:







simulate this circuit &ndash; Schematic created using CircuitLab

Actually, the design is not great overall. Especially the NPN transistor as emitter follower is not the right choice for this application, as there will be a voltage drop of 0.7V and the capacitor will never be fully charged. I would recommend to change this part to whatever fits your needs.

You can tweak C1 and R3 to match your desired pulse length (currently 3.3s). Simply multiply them to get the time in seconds.

There is some more or less complex math behind this, look for RC timing circuit on google to find massive tutorials and resources for learning. This circuit is adapted from "The Art of Electronics" (p. 24, Figure 1.38). You might want to check that out for explanations as well.