I like [name]Zoe[/name] and [name]Hugo[/name] best, but I do think [name]Zoe[/name] and [name]Theodore[/name] sound nice together (but not [name]Zoe[/name] and [name]Theo[/name])
I don’t think the length of the name matters as much as its style. [name]Zoe[/name] and [name]Theodore[/name] are a perfectly fine pair; both are classic Greek names. Likewise, [name]Zoe[/name] and [name]Hugo[/name] go together just as well.
I do think [name]Zoe[/name] and [name]Theo[/name] might be little too close in terms of sounds, though. They don’t exactly rhyme, but they’re close. If those are your final two choices, I’d go with [name]Hugo[/name].
To answer your question I don’t think you need to have the same length of a name. However I really like [name]Zoe[/name] & [name]Hugo[/name]. I think they both have spunk to them.