Мне кажется, LDA могло бы спасти, если бы была хорошая готовая модель обученная на большущем датасете на тысячи топиков, один из которых был бы деревья. Мысль идти в семантику для вашей задачи кажется правильной - переходим в семантическое пространство, и по идее, если модель подходящая - близкие по смыслу тексты будут рядом и при кластеризации попадут в один кластер. Если тексты короткие - я бы попробовал начать с гуглового Universal Sentence Encoder, есть мультиязычная модель, которая кушает и русский язык. По опыту, она неплохо ловит тематики, и ПОК займет немного времени.