Единственное, что можно почти однозначно посоветовать - model2 должна ловить сигналы model1 об изменениях в данных.
не думаю что это будет хорошим решением, мне кажется, более элегантным будет решение, когда ссылка на model1 является свойством (элементом) класса model2, а методы data() и setData() класса model2 должны обеспечить работу с данными моделей как model2, так и model1. Таким образом model2 сможет непосредственно взаимодействовать с данными model1.
Вообще подобная задача возникает довольно часто, наверняка решение уже имеется, вот только какое?