Eu tentei alguns emuladores de terminal no Linux, ou seja, seu console embutido, xterm, urxvt, vte (gnome-terminal e amigos), konsole, terminologia (do esclarecimento), kitty, pterm (do putty) e st (de abjeto). Todos eles se comportam como você diz que o iTerm2 faz e, ao contrário do Terminal.app padrão do Mac.
Isso praticamente sugere que o iTerm2 está correto e o Terminal.app é o buggy.
Se você tiver outros caracteres que a guia ignora, por exemplo, "er" aqui:
echo -e "qwer\r3[42mas\tdf"
você também verá que esses caracteres são deixados intactos e não são substituídos por espaços, nem recoloridos com um novo plano de fundo. (Eu tentei na maioria dos emuladores que eu listei acima, não todos. Além disso, eu não tenho acesso a um Mac. Eu adoraria ouvir o que o Terminal.app faz aqui.)
Isso porque o TAB não é um caractere imprimível. É um caractere de controle do movimento do cursor, similarmente a outras seqüências de escape.