Find cut vertex in tree with constraint on the size of largest component
Your algorithm may not work. What you describe, in fact, is an algorithm for computing the center of the tree. The following is a brief theory behind this algorithm.
The distance, denoted by $dist(v,u)$, between two vertices $u$ and $v$ is defined as the shortest path between $u$ and $v$. The eccentricity of a vertex $v$ is defined as
$$ \epsilon(v)=\max_{u \in V}\{dist(v,u)\}$$
In simple words $\epsilon(v)$ is the maximum among all distances from the $v$ to a vertex $u$.
We define the center of a graph $G$ is the set of vertices with minimum eccentricity. Observe that step-by-step leaf removal in your algorithm does not change the eccentricity of the center.
Your algorithm essentially computes the center of the tree but the following is a counterexample. This tree

has the center $v_c$. Your algorithm will return $v_c$ as the cut vertex. But if your threshold is $3$ then the optimal cut vertex would be the vertex $u$.