The following is a combination of a proof in the book "Principles
of mathematical analysis" by Dieudonne of a version of a mean value
theorem and of the proof of the Theorem (Theorem 8.21) in Rudin's
book "Real and Functional Analysis" that you also cite.
The proof actually yields the stronger statement that it suffices
that $f$ is differentiable from the right on $\left[a,b\right]$
except for an (at most) countable set $\left\{ x_{n}\mid n\in\mathbb{N}\right\} \subset\left[a,b\right]$.
Let $\varepsilon>0$ be arbitrary. As in Rudin's proof, there is a
lower semicontinuous function $g:\left[a,b\right]\to\left(-\infty,\infty\right]$
such that $g>f'$ and
$$
\int_{a}^{b}g\left(t\right)\, dt<\int_{a}^{b}f'\left(t\right)\, dt+\varepsilon.
$$
Let $\eta>0$ be arbitrary. Define
\begin{eqnarray*}
F_{\eta}\left(x\right) & := & \int_{a}^{x}g\left(t\right)\, dt-f\left(x\right)+f\left(a\right)+\eta\left(x-a\right),\\
G_{\eta}\left(x\right) & := & F_{\eta}\left(x\right)+\varepsilon\cdot\sum_{\substack{n\in\mathbb{N}\\
x_{n}<x
}
}2^{-n}.
\end{eqnarray*}
With these definitions, $F_{\eta}$ is continuous with $F_{\eta}\left(a\right)=0=G_{\eta}\left(a\right)$.
Furthermore, if $z_{n}\uparrow z$, then $F_{\eta}\left(z_{n}\right)\to F_{\eta}\left(z\right)$
and
$$
\varepsilon\cdot\sum_{\substack{m\in\mathbb{N}\\
x_{m}<z_{n}
}
}2^{-m}\leq\varepsilon\cdot\sum_{\substack{m\in\mathbb{N}\\
x_{m}<z
}
}2^{-m},
$$
which yields
$$
\limsup_{n\to\infty}G_{\eta}\left(z_{n}\right)\leq G_{\eta}\left(z\right).\qquad\left(\dagger\right)
$$
For $x\in\left[a,b\right)$ there are two cases:
$x=x_{n}$ for some $n\in\mathbb{N}$. By continuity of $F_{\eta}$,
there is some $\delta_{x}>0$ such that $F_{\eta}\left(t\right)>F_{\eta}\left(x\right)-\varepsilon\cdot2^{-n}$
holds for all $t\in\left(x,x+\delta_{x}\right)$. For those $t$,
we derive
\begin{eqnarray*}
G_{\eta}\left(t\right)-G_{\eta}\left(x\right) & = & F_{\eta}\left(t\right)-F_{\eta}\left(x\right)+\varepsilon\cdot\sum_{\substack{m\in\mathbb{N}\\
x\leq x_{m}<t
}
}2^{-m}\\
& > & -\varepsilon\cdot2^{-n}+\varepsilon\cdot\sum_{\substack{m\in\mathbb{N}\\
x\leq x_{m}<t
}
}2^{-m}\geq0.
\end{eqnarray*}
$x\notin\left\{ x_{n}\mid n\in\mathbb{N}\right\} $. By assumption,
this implies that $f$ is differentiable from the right at $x$, which
means
$$
\frac{f\left(t\right)-f\left(x\right)}{t-x}\xrightarrow[t\downarrow x]{}f'\left(x\right)<f'\left(x\right)+\eta.
$$
Together with $g\left(x\right)>f'\left(x\right)$ and with the lower
semicontinuity of $g$, we see that there is some $\delta_{x}>0$
such that
$$
f\left(t\right)-f\left(x\right)<\left(f'\left(x\right)+\eta\right)\cdot\left(t-x\right)\text{ and }g\left(t\right)>f'\left(x\right)\qquad\forall t\in\left(x,x+\delta_{x}\right).
$$
Hence, for each $t\in\left(x,x+\delta_{x}\right)$, we get
\begin{eqnarray*}
G_{\eta}\left(t\right)-G_{\eta}\left(x\right) & = & \varepsilon\cdot\sum_{\substack{m\in\mathbb{N}\\
x\leq x_{m}<t
}
}2^{-m}+F_{\eta}\left(t\right)-F_{\eta}\left(x\right)\\
& \geq & F_{\eta}\left(t\right)-F_{\eta}\left(x\right)\\
& = & \int_{x}^{t}\underbrace{g\left(s\right)}_{>f'\left(x\right)}\, ds-\left[f\left(t\right)-f\left(x\right)\right]+\eta\left(t-x\right)\\
& > & f'\left(x\right)\cdot\left(t-x\right)-\left[f'\left(x\right)+\eta\right]\left(t-x\right)+\eta\left(t-x\right)=0.
\end{eqnarray*}
In summary, for each $x\in\left[a,b\right)$ there is some $\delta_{x}>0$
such that $G_{\eta}\left(t\right)>G_{\eta}\left(x\right)$ for all
$x\in\left(x,x+\delta_{x}\right)$. Using $G_{\eta}\left(a\right)=0$,
we see $G_{\eta}\left(t\right)\geq0$ for $t\in\left[a,a+\delta_{a}\right)$.
Define
$$
\varrho:=\sup\left\{ t\in\left(a,b\right)\mid G_{\eta}|_{\left[a,t\right)}\geq0\right\} .
$$
It is easy to see that the supremum is actually attained. Using $\left(\dagger\right)$,
we also see $G_{\eta}|_{\left[a,\varrho\right]}\geq0$.
If we had $\varrho<b$, the above would yield $G_{\eta}\geq0$ on
$\left[a,\varrho\right]\cup\left(\varrho,\varrho+\delta_{\varrho}\right)=\left[a,\varrho+\delta_{\varrho}\right)$,
in contradiction to maximality of $\varrho$. Hence, $\varrho=b$
which yields
\begin{eqnarray*}
0 & \leq & G_{\eta}\left(b\right)\\
& = & \varepsilon\cdot\sum_{\substack{m\in\mathbb{N}\\
x_{m}<b
}
}2^{-m}+\int_{a}^{b}g\left(t\right)\, dt-f\left(b\right)+f\left(a\right)+\eta\left(b-a\right)\\
& \leq & \varepsilon+\int_{a}^{b}f'\left(t\right)\, dt+\varepsilon-f\left(b\right)+f\left(a\right)+\eta\left(b-a\right).
\end{eqnarray*}
Letting $\varepsilon\to0$ and then $\eta\to0$, we conclude
$$
f\left(b\right)-f\left(a\right)\leq\int_{a}^{b}f'\left(t\right)\, dt.
$$
Now apply the above argument to $-f$ instead of $f$ (note that $-f$
fulfills all assumptions). This yields
$$
f\left(b\right)-f\left(a\right)\geq\int_{a}^{b}f'\left(t\right)\, dt
$$
and hence
$$
\int_{a}^{b}f'\left(t\right)\, dt=f\left(b\right)-f\left(a\right).
$$
It is clear that the same argument yields
$$
f\left(y\right)-f\left(x\right)=\int_{x}^{y}f'\left(t\right)\, dt
$$
for all $x,y\in\left[a,b\right]$.
Best Answer
There is a more straightforward way by using that a function is lower semicontinuous if and only if for each $c \in \mathbb{R}$, the set $\{ x \in X : f(x) \le c \}$ is closed.
For the proof of this and the proof of extreme value theorem (also known as Weierstrass' theorem) using this fact, see pp.43-44 of Infinite Dimensional Analysis: Hitchhiker's Guide, which preview is available in google books.