[proofplan]
We use compactness to choose a minimal non-empty closed forward-invariant subset. In such a minimal set, every forward tail of every orbit is dense in the minimal set, so each point is accumulated by its own positive iterates.
[/proofplan]
[step:Choose a minimal compact invariant set]
Let $\mathcal{K}$ be the family of non-empty closed subsets $K\subseteq X$ satisfying
\begin{align*}
T(K)\subseteq K.
\end{align*}
The family is non-empty because $X\in\mathcal{K}$. Order $\mathcal{K}$ by inclusion. If $(K_i)_{i\in I}$ is a chain in $\mathcal{K}$, then the compactness of $X$ and the finite intersection property imply that
\begin{align*}
K:=\bigcap_{i\in I}K_i
\end{align*}
is non-empty and closed. Also $T(K)\subseteq K$, so $K\in\mathcal{K}$. By Zorn's lemma, $\mathcal{K}$ has a minimal element; call it $M$.
[/step]
[step:Show that positive orbit tails are dense in the minimal set]
Choose any $x\in M$. The set
\begin{align*}
L:=\overline{\{T^n x:n\geq1\}}
\end{align*}
is non-empty, closed, and contained in $M$. It is forward-invariant because continuity of $T$ gives
\begin{align*}
T(L)\subseteq \overline{\{T^{n+1}x:n\geq1\}}\subseteq L.
\end{align*}
By minimality of $M$, we must have $L=M$.
[/step]
[step:Extract a recurrent point]
Since $x\in M=L$, every neighbourhood $U$ of $x$ intersects $\{T^n x:n\geq1\}$. Hence there is some $n\geq1$ such that $T^n x\in U$. Thus $x$ is topologically recurrent.
[/step]