Fix $\epsilon>0$. Notice that, with prob 1, the events $\{n U_n \leq \epsilon\}$ occur infinitely often (i.e., for infinitely many indices $n \in \{1, 2, 3, ...\}$), but the events $\{n U_n > \epsilon\}$ also occur infinitely often.
Your confusion is because there is a concept of “$\limsup$ of a sequence of events” that is different from the concept of “$\limsup$ of a sequence of random variables.” In this problem, the following two equalities can be proven:
\begin{align}
P\left[\limsup_{n\rightarrow\infty}\{n U_n \leq \epsilon\}\right] &=1 \\
P\left[\left(\limsup_{n\rightarrow\infty} nU_n\right) \leq \epsilon\right] &=0
\end{align}
where the first is the probability that the events $\{n U_n \leq \epsilon\}$ occur infinitely often, and the second is the probability that the random variable sequence $n U_n$ has a $\limsup$ that is less than or equal to $\epsilon$. These two equations are different and you cannot prove one from the other. Your derivation using Borel-Cantelli proves the first. The second is proven by observing that $\{U_n>1/2\}$ occurs infinitely often (with prob 1) and so we can find arbitrarily large indices $n$ such that $n U_n \geq \epsilon + 1$.
Here are the basic definitions of $\limsup$ and $\liminf$ of a sequence of events, using language of "infinitely often" (i.o.) and "finitely often" (f.o). Suppose we have a sequence of events $\{A_n\}_{n=1}^{\infty}$ in some sample space $S$. So $A_n \subseteq S$ for all $n \in \{1, 2, 3, …\}$. We define:
\begin{align}
\limsup_{n\rightarrow\infty} A_n &\equiv \cap_{n=1}^{\infty}\left[\cup_{m\geq n} A_m\right] \equiv \{\{A_n\} \quad i.o\} \equiv \{\mbox{An infinite number of events $A_n$ occur}\} \\
\liminf_{n\rightarrow\infty} A_n &\equiv \cup_{n=1}^{\infty} \left[\cap_{m \geq n} A_m\right] \equiv \{\{A_n^c\} \quad f.o.\} \equiv \{\mbox{All but finitely many events $A_n$ occur}\}
\end{align}
where $A_n^c$ is the complement of the event $A_n$. It can be shown that:
$$ \liminf_{n\rightarrow\infty} A_n \subseteq \limsup_{n\rightarrow\infty} A_n $$
which means that if the events occur for all but finitely many indices $n$, then they must occur for infinitely many indices $n$. In general, the reverse is not true: If the events occur for infinitely many indices, they do not necessarily occur for all but finitely many indices.