Leading zeros are always written out and are required to be spoken, so 5:43 a.m. is spoken "zero five forty-three" (casually) or "zero five four three" (military radio), as opposed to "five forty-three" or "five four three".
I don't recall hearing "zero five forty three" spoken format very often, generally they used "O'five forty three (supposedly, times don't use dashes, though I'm not sure whether the military does or not). I'm sure for significant times, where orders were given and no one wanted to risk confusion, they'd probably spell it out as you suggest, though. It just wasn't a common usage around most military establishments.
I can't recall how the exchanges (shops) and commissaries (grocery stores) listed times, since that was used by both military personal and civilians (either dependents or civil service personnel), though I suspect they added the colons.
Typically, most bases just use the local time, but anyone referencing oversea schedules (like the time of an offensive strike) would typically default to Zulu time, so everyone would be using the same time (the reason many overseas personnel wear two watches). They typically wouldn't EST (I'm not sure what the letter designation for that would be) or any other specific local time. Again, if European forces used Washington, England, German and Zurich time, all hell would break out as the likelihood of someone mistaking one for another increases dramatically.
That makes it clear a Military time notation is - 0340Z - while a 24 hours time notation is - 23:59 - so they have a slightly different presentation (which is what I've been saying all along).
I was confused by the earlier note that "I've never heard any military operation use zeros for time", which didn't seem to make sense since most clocks start at zero hundred time.