Нашел похожий
примерМодифицировать его под мою задачу не получилось.
Сделал цепочку из моделей. Исходная модель дерева, затем модель по ссылке, которая убирает верхний уровень дерева, оставляя только листья, дальше фильтрующая модель (QSortFilterProxyModel), которая фильтрует нужные элементы.
Насколько хорошо такая схема будет работать по производительности?