С Джоном - похоже все та же смещенная иерархия в стае, потеряла Е.И. статус вожака (если вообще его имела когда-то). Ну и какой-то стимул-фактор еще мог усилить такое поведение: кто-то сильно шарахнулся и срочно убежал от гавкающего Джона (положительное подкрепление отрицательного поведения), например.
Основные методы, которые бы я применила в этом случае:
1. Собака на поводке, при малейшей попытке собаки залаять на кого-то и кинуться к незнакомцу - дергаем за поводок, команда "стоп, сидеть!". Удержать собаку минуту-другую в таком состоянии (если надо - придержать за морду), дать лакомство, если молчит (хоть и вынужденно).
2. Найти какое-то отвлекающее средство (мячик, палочку и пр.) и в момент появления незнакомца срочно начать играть с собакой (правда для этого собака должна быть одна у хозяйки на момент обучения). При попытке залаять и кинуться - см. пункт 1.
3. Собака без поводка (когда на поводке уже перестала бросаться, и слушается хозяйку, и ждет лакомства за то, что не лает и не швыряется), появление незнакомца опять вызывает лай и бросок в сторону человека- хозяйка должна встать между человеком и собакой и идти на собаку, оттесняя ее от человека и повторяя команду "стоп!" (или любую, означающую - "прекрати лаять").
Но все это возможно только если Е.И. возьмет себя в руки, и начнет командовать Джоном, вместо того, чтобы давать ему командовать.
Вот нашла пару видео с конкретными примерами такого поведения и как с ним бороться.
https://www.youtube.com/watch?v=9C7ic-BHIPY
https://www.youtube.com/watch?v=L1sQmWhXNVI
https://www.youtube.com/watch?v=JN1ExzEXFI0