Suddenly want to increase the domain from 2^55 to something much higher? Use a 15-byte address where the first 15 bits are 1s and the 16th bit is 0. The rest of the (15*8 - 16 = 104) bits are available.
You get the point - we can arbitrarily increase the size without giving up flexibility.
What's the drawback if we use something like this? Routing troubles? Speed?
Alternative method: the addresses can be as many bits as required, but every bit index that's a multiple of 8 must be 1. The last byte is signified by a byte having 0 at index 0. Basically:
[1]1010110 [1]0001111 [0]1101011
^ last byte