I don’t think there is a technological reason for this. I have seen regular phone numbers end in -0000.
A long time ago during the days of dial phones, 0000 would take the longest to dial – your finger had to move around the circle fully 4 times on a dial phone, and with pulse dialing that was 40 clicks. (pre-touch-tone days).
I imagine that the number 0 is reserved for Operator in almost every switchboard, so having an extension that started with a 0 would just confuse the switchboard software. It wouldn’t know how to route the call.