А попробуйте выдать ребенку свои деньги, чтобы он ими распоряжался сам, а не вы покупали.   Причем выдавать их не перед поездкой, а например на неделю. Чтобы у него был выбор не "быть добрым за мамин счет или не быть", а "потратить эти деньги на таких друзей или потратить их на что-то важное для себя". Возможно приоритеты сразу сменятся.