В общем, если ваше дерево не является двоичным деревом поиска, вы должны рекурсивно исследовать дерево (сначала в глубину, либо в ширину) и возвращать узел с идентификатором, равным требуемому значению.
Я согласен, что TreeMap, вероятно, не лучший способ реализовать двоичное дерево.