No, that wasn't what I was talking about, but here's another thought tree to use.

Instead of acting when the who results come in like this, write the channel/name prepended with an alias name to a file, then /play -c the file with a delay.

This will shorten the pause when the coloration is happening (well, spread it out really), but you'll still get the pause when the /who results are coming in, just (hopefully) shorter.