Re: PIC and 3Volts?
Generally, the IR remote controls use a carrier of about 38kHz.
I suggest you use this aproach, since it is easier to filter out unwanted signals and noise.
Then, modulate this (0-100%) with a code. It is much better than pulse width. Pulse width can change during transmission.
At a minimum, I would send 2 pulses, each of fixed width (say 250us), but make the pause between them variable, like you are proposing. That way, even if the pulse width gets modified during the transmission, the pause between them should not. And the receiver will always ignore pauses that are outside the range you specify. This will provide better immunity.
To save the battery, I would have the micro go to sleep and use wakeup on change to detect a key closure. Once the micro wakes up, just send the pulses and them go back to sleep.