Relay closes without load connected across its terminals but doesn't work when it's loaded
In theory it shouldn't, but perhaps your relay drive circuit is operating at the margins and is being thrown off a bit by interference of some sort when the load is present.

Looking at things, you have a PIC micro, which if the IO pin is putting 5V into R3, delivers 500 microamps into the base of Q2. The DC gain of a 2N2222, let's optimistically call it 100, would yield 50mA current through the collector. LED2, powered by the 12V battery, would want nearly 50mA of current by itself ((12V Battery - 1.8V LED voltage drop) / 220 ohms = ~48mA). Perhaps the relay is only barely getting enough juice in this setup?

Try change R3 to something lower, like 1K or something, and increase R5 to at least 1K if not more. Or even take out LED2 entirely to see what happens. And check the specs on the relay coil - how much current does it need to operate? You could just test it with the battery and a meter, too.