on ESP8266 it's more tricky because you need to have GPIO0 pin low when reseting the board to be able to upload firmware.
so. there is no way you can control something with esp01.
Why not use a PNP transistor and current source the relay.
Because it is only 3.3 Volts?
Shouldn't make any difference, if you arrange the base resistors correctly.
It will make all the difference if in fact, the relay is not running from 3.3 V and I am sure it is not in that diagram (though it is unclear).
Without the 2.7 V Zener (haven't seen one of those!)
Transistor permanently turned on?