Allright, so here is what happens:
you try to figure out the terminal size and then you do a manual line break at word boundaries. That makes the number drop to the next line and hence un-grepable in some cases.
The reason why you don't see it is that your wimpy hostnames are shorter than my awesome one
Try narrowing the window and then do the one without redirection again.
In the case of fd2 not being connected to the terminal the whole thing seems to default to 80, which makes yours work (thanks to the short hostname) and mine fail regardless of actual window size. It seems to me that defaulting to INT_MAX would be the right fix for this.