[proofplan]
Uniform convergence first gives continuity of the limit by the standard $\varepsilon/3$ argument: approximate $f$ by one continuous function $f_N$, use continuity of $f_N$ at the point, and then return to $f$. Once $f$ is continuous, all functions involved are bounded Borel functions on the compact interval $[a,b]$, hence Lebesgue integrable. Finally, the integral error is controlled by the uniform error times the length of the interval:
\begin{align*}
\left|\int_a^b f_n\,d\mathcal{L}^1-\int_a^b f\,d\mathcal{L}^1\right|\le (b-a)\sup_{x\in[a,b]}|f_n(x)-f(x)|.
\end{align*}
[/proofplan]
[step:Prove that the uniform limit is continuous]
Fix $x_0\in[a,b]$ and let $\varepsilon>0$. Since $f_n\to f$ uniformly on $[a,b]$, there exists $N\in\mathbb{N}$ such that
\begin{align*}
\sup_{y\in[a,b]}|f_N(y)-f(y)|<\frac{\varepsilon}{3}.
\end{align*}
Because $f_N:[a,b]\to\mathbb{R}$ is continuous at $x_0$, there exists $\delta>0$ such that, for every $x\in[a,b]$ with $|x-x_0|<\delta$,
\begin{align*}
|f_N(x)-f_N(x_0)|<\frac{\varepsilon}{3}.
\end{align*}
For such $x$, the triangle inequality gives
\begin{align*}
|f(x)-f(x_0)|\le |f(x)-f_N(x)|+|f_N(x)-f_N(x_0)|+|f_N(x_0)-f(x_0)|.
\end{align*}
Each of the first and third terms is bounded by the uniform estimate, and the middle term is bounded by continuity of $f_N$ at $x_0$. Hence
\begin{align*}
|f(x)-f(x_0)|<\varepsilon.
\end{align*}
Thus $f$ is continuous at $x_0$. Since $x_0\in[a,b]$ was arbitrary, $f:[a,b]\to\mathbb{R}$ is continuous.
[/step]
[step:Verify that all integrals are well defined]
For every $n\in\mathbb{N}$, the function $f_n:[a,b]\to\mathbb{R}$ is continuous, hence Borel measurable and bounded on the compact interval $[a,b]$. The previous step shows that $f:[a,b]\to\mathbb{R}$ is also continuous, hence Borel measurable and bounded on $[a,b]$. Since
\begin{align*}
\mathcal{L}^1([a,b])=b-a<\infty,
\end{align*}
each bounded Borel function $f_n$ and $f$ is Lebesgue integrable over $[a,b]$ with respect to $\mathcal{L}^1$.
[/step]
[step:Bound the integral error by the uniform error]
For each $n\in\mathbb{N}$, define
\begin{align*}
s_n:=\sup_{x\in[a,b]}|f_n(x)-f(x)|.
\end{align*}
By uniform convergence, $s_n\to 0$ as $n\to\infty$. Using linearity of the Lebesgue integral and the absolute value estimate for integrals, we obtain
\begin{align*}
\left|\int_a^b f_n(x)\,d\mathcal{L}^1(x)-\int_a^b f(x)\,d\mathcal{L}^1(x)\right|=\left|\int_a^b (f_n(x)-f(x))\,d\mathcal{L}^1(x)\right|.
\end{align*}
Therefore
\begin{align*}
\left|\int_a^b (f_n(x)-f(x))\,d\mathcal{L}^1(x)\right|\le \int_a^b |f_n(x)-f(x)|\,d\mathcal{L}^1(x).
\end{align*}
For every $x\in[a,b]$, the definition of $s_n$ gives $|f_n(x)-f(x)|\le s_n$. Monotonicity of the Lebesgue integral then gives
\begin{align*}
\int_a^b |f_n(x)-f(x)|\,d\mathcal{L}^1(x)\le \int_a^b s_n\,d\mathcal{L}^1(x).
\end{align*}
Since $s_n$ is constant as a function of $x$ and $\mathcal{L}^1([a,b])=b-a$,
\begin{align*}
\int_a^b s_n\,d\mathcal{L}^1(x)=s_n(b-a).
\end{align*}
Combining these estimates,
\begin{align*}
\left|\int_a^b f_n(x)\,d\mathcal{L}^1(x)-\int_a^b f(x)\,d\mathcal{L}^1(x)\right|\le (b-a)s_n.
\end{align*}
Since $s_n\to 0$ and $b-a$ is fixed, the right-hand side tends to $0$.
[guided]
The purpose of this step is to convert uniform convergence into a numerical bound on the difference of the integrals. For each $n\in\mathbb{N}$, define the uniform error
\begin{align*}
s_n:=\sup_{x\in[a,b]}|f_n(x)-f(x)|.
\end{align*}
The hypothesis $f_n\to f$ uniformly on $[a,b]$ means exactly that $s_n\to 0$ as $n\to\infty$.
We now estimate the integral difference. By linearity of the Lebesgue integral applied to the integrable functions $f_n$ and $f$,
\begin{align*}
\int_a^b f_n(x)\,d\mathcal{L}^1(x)-\int_a^b f(x)\,d\mathcal{L}^1(x)=\int_a^b (f_n(x)-f(x))\,d\mathcal{L}^1(x).
\end{align*}
Taking absolute values and applying the integral absolute value estimate gives
\begin{align*}
\left|\int_a^b (f_n(x)-f(x))\,d\mathcal{L}^1(x)\right|\le \int_a^b |f_n(x)-f(x)|\,d\mathcal{L}^1(x).
\end{align*}
The uniform error $s_n$ controls the integrand at every point of the interval: for every $x\in[a,b]$,
\begin{align*}
|f_n(x)-f(x)|\le s_n.
\end{align*}
By monotonicity of the Lebesgue integral,
\begin{align*}
\int_a^b |f_n(x)-f(x)|\,d\mathcal{L}^1(x)\le \int_a^b s_n\,d\mathcal{L}^1(x).
\end{align*}
Because $s_n$ is a constant with respect to $x$, and because the one-dimensional Lebesgue measure of $[a,b]$ is $b-a$, we have
\begin{align*}
\int_a^b s_n\,d\mathcal{L}^1(x)=s_n\mathcal{L}^1([a,b])=s_n(b-a).
\end{align*}
Combining the preceding estimates yields
\begin{align*}
\left|\int_a^b f_n(x)\,d\mathcal{L}^1(x)-\int_a^b f(x)\,d\mathcal{L}^1(x)\right|\le (b-a)s_n.
\end{align*}
Since $s_n\to 0$ and $b-a$ is a fixed positive real number, $(b-a)s_n\to 0$. Therefore the absolute difference between the two integrals tends to $0$.
[/guided]
[/step]
[step:Conclude convergence of the integrals]
The estimate from the previous step shows that
\begin{align*}
0\le \left|\int_a^b f_n(x)\,d\mathcal{L}^1(x)-\int_a^b f(x)\,d\mathcal{L}^1(x)\right|\le (b-a)s_n.
\end{align*}
Since $(b-a)s_n\to 0$, the squeeze principle gives
\begin{align*}
\lim_{n\to\infty}\left|\int_a^b f_n(x)\,d\mathcal{L}^1(x)-\int_a^b f(x)\,d\mathcal{L}^1(x)\right|=0.
\end{align*}
Equivalently,
\begin{align*}
\lim_{n\to\infty}\int_a^b f_n(x)\,d\mathcal{L}^1(x)=\int_a^b f(x)\,d\mathcal{L}^1(x).
\end{align*}
Together with the continuity of $f$ proved above, this proves the theorem.
[/step]