The fuel tank doesn't actually need a cap to run. Basically the fuel is gravity fed into the carburators, the petcock is turned 'on' by a vacuum line that runs from it to the intake manifold.
The petcock is basically a vacuum operated switch. Apply vacuum and fuel flows via gravity, remove vacuum and fuel stops. At least, thats what is supposed to happen. Most of these old petcocks leak now, be it because of worn seals or torn diaphrams. Two ways to fix this a leaky petcock.
Add an in-line fuel shutoff (assuming fuel isn't actually leaking back down the petcock vacuum feed, which it can do).
Replace the fuel petcock.