Ты долбишься.
Для начала нужно было разобраться в теме. Затем уже лезть с ответом (который, к тому же, даже не костыль).
А теперь поясню за каждую часть.
1) Почему генерация, а не рост.
пытался посадить его с помощью /place features, но там нет в списке моего дерева.
Это значит, что майнкрафт о таком feature (дерево, в данном случае) даже не знает. Расти, не расти дерево - что толку, если майн о нём не знает?
2) Почему твой код говно.
Используй scheduler и в его анонимном методе каждый 20 тик будет вызывать метод роста, определи переменную высоты похожая формула для нее "3 + Math.random() * 3" ну а дальше разберешься.
В майне есть отдельный SaplingBlock, в который в конструктор передаётся дерево. В этом же классе есть randomTick и advanceTree, через них в ванилле и растёт дерево.
Твой код же работать если и будет, то весьма нестабильно. В особенности это касается серверов. Ну и в целом следовало бы почитать о том, где и какие элементы стоит использовать, а где они откровенно не нужны.