Lemma All connected graphs admit a spanning tree.
Proof By induction.
For step 0, choose any $u\in G$ and set $V_0 = \{u\}$ and $E_0 = \varnothing$.
For step $n+1$,
- Order the vertices in $V_n$ as $\{v_1, v_2, \dots, v_k\}$ and set $V_{n+1} = E_{n+1} = \varnothing$ for the moment.
- For each $j\in\{1, \dots, k\}$, there is a (possibly empty) set $\Delta_j$ of vertices that are adjacent to $v_j$ but not in $\bigcup_{m=1}^{n+1} V_{m}$. Let $V_{n+1} := V_{n+1}\cup \Delta_j$ and $E_{n+1} := E_{n+1}\cup \{\{v_{j}, w\}\::\:w\in\Delta_j\}$.
- If $V_{n+1}$ is empty, then stop: $T = T_{n}$.
- Let $T_{n+1}=\Big(\bigcup_{m=1}^{n+1} V_{m},\;\bigcup_{m=1}^{n+1} E_{m}\Big)$, increase $n$ by 1, and repeat.
Graph $T$ is spanning because each $v\in G$ has a well-defined, finite distance from $u$ and $V_n$ is precisely the set of vertices at distance $n$ from $u$. Suppose that $T$ is not a tree and therefore has a cycle, and take $v$ such that $$d := d(u, v) = \min_{\gamma\in C}\max_{v\in \gamma} d(u, v),$$ $C$ the set of cycles in $T$. Then $T_{d-1}$ is a tree, implying that a vertex appeared in $\Delta_i\cap\Delta_j$ in step $d$ with $i\neq j$, contradiction.
Proof of theorem We use the lemma, which we may do without circularity since it stands without the conclusion of the theorem. Every tree is a spanning tree of some graph $G$ (for example, the tree itself). Let $n$ be the order of $G$ and $s_d$ be the number of vertices at distance $d\geq 1$ from $u$; then $\sum_{d\geq 1} s_d = n-1$ since all but $u$ itself are at a positive distance. For the same reason, precisely $s_d$ edges are added to the spanning tree at each step $d\geq 1$, one for each vertex at distance $d$ from $u$. Therefore, the tree has order $n$ (the same as that of the graph since it is a spanning tree) and size $n-1$.
CQFD