Обида заключается в прилюдном унижении. Потому что сказать человеку, что он воняет и не обидеть его - почти нереально даже среди близких людей. А уж услышать это в присутствии посторонних, да еще настойчиво, несмотря на попытки перевести тему и в достаточно грубой форме - это что? Не надо ли ребенку вместо вашего варианта вывода сделать другой - о том, что близких людей надо уважать, не оскорблять и если мама по каким-то причинам пытается прекратить разговор - уметь это услышать до того, как наговорил бабушке такого, что та расплакалась?