I don't know if it's an incompatible NAT. For me, it happens with random people at a random frequency for those people.
I.e. for 10 days straight, I won't have this issue with the same group of friends, then on the 11th day, I won't be able to hear one of them, but all the others are fine, then on the 12th day, the guy that I couldn't hear before is fine, but I can't hear someone else.
Also, starting up a private chat with the person who can't hear you in the lobby works, and communication goes both ways in the private chat. After killing the private chat, the problem returns in the GRAW general channel.
Having the person who can't hear someone log out and log back in always seems to fix the problem, too.
If it's a NAT issue, it's an incredibly flakey one. Wouldn't putting in code that attempts to re-initiate the conversation connection periodically potentially solve the problem? It seems like it's giving up on the communication pathway and then not re-attempting to connect because it already thinks it has no chance.