Я думаю, что вы не можете получить эту функциональность из шаблона.Однако вы можете сделать это в своем представлении:
subject_type = # Some SubjectType object
my_teachers = []
for subject in subject_type.subject_set:
my_teachers += subject.teacher_set
# What we do with the duplicates?
my_teachers = list(set(my_teachers))
Теперь у вас есть список уникальных учителей в my_teachers
для определенного SubjectType.
РЕДАКТИРОВАТЬ: Вы можете сделать это для каждого объекта SubjectType и передать полученный список (списков) в шаблон.