Drive the relay coil on the low side instead (i.e. with your switching device from the coil to GND not from the coil to Vcc). A bog-standard 2N3904, a diode, and a resistor will do the job, as follows:
Q1 can be any jellybean NPN small signal BJT, even, and D1 can be whatever rectifier or switching diode you have on hand. R1's value isn't particularly critical -- anything from over say 500 ohms to a couple of kOhms will do.
Of course, though, this assumes that your 3.3V supply isn't isolated from your 12V supply. If it is, you'll need to use an optocoupler like the 4N35 -- wire the collector and emitter of the optocoupler in place of the transistor's collector and emitter, and your I/O to the opto's LED with a 330 to 470 ohm resistor in series.