Blocks = Streets
There is no ambiguity because a block does not refer to
distance, but instead to the actual number of streets
If you’re giving directions, go 5 blocks means you go to the
fifth intersection afterwards, no matter whether those blocks are
long or short, or some mix of long and short, or even variable. But using 'blocks' on curving and variable length streets like in suburbs is apt to be difficult and you'l be more likely to say 'turn on your fifth street on your right'.
Of course people sometimes use words loosely, vaguely, without
really exactly knowing things, and also blocks has a loose
correlation with some concept of distance that may well be used
(though not often) as a substitute for distance. But in
general, a block is not a particular distance; it just counts up
the number of streets you cross to get there.
In Manhattan, the distance between avenues (1st Ave, 2nd Ave,
etc) from east to west is very reliably ∼3½ (or ⁷⁄₂) times the
distance between streets (42nd St to 43rd St) from north to south
(note that both streets and avenues run at a slight angle
compared with exact latitude or longitude). So 5 blocks going
north–south is a much, much shorter distance than 5 blocks
east–west is: just ²⁄₇ the distance. But that's just Manhattan. Other cities will be different.
There is no ambiguity because you usually have some context of
which direction you’re going:
A: "How do I get to Carnegie Hall from Ed Sullivan Theater?"
B: "Go 1 block east on 54th and then 2 blocks and some on 7th Ave"