This is true, $f$ is actually everywhere differentiable. It is the "Limit under the signSign of derivative"Derivative" Theorem; it also holds for sequences of maps between Banach spaces (and you may even allow countably many points of non-differentiability). Check e.g. Dieudonné's Foundations of Modern Analysis , Theorem $(8.6.3)$ .
Edit. As immediately spotted by Josif Pinelis, to apply the Limit under the Sign of DerivativeLSD Theorem as stated by Dieudonné, we need to replace the uniform convergence on a full measure set (2) with the global (also "local" would go) uniform convergence, modifying $g$ on a null set if needed. This is possible because of:
Since $$\text{ sup ess } |u'(x)|\le\sup|u'(x)|=\sup_{a\le x<y\le b} \Big|\frac{u(y)-u(x)}{y-x}\Big|,$$ the above Prop 1 follows from a Mean Value Theorem for everywhere differentiable functions (applied on each interval $[x,y]$) for everywhere differentiable functions:
I wish to prove a slightly stronger version of Prop 3, namely ([...)]
The intervals $[c,d]\subset(a,b)$ with $v(d)<v(c)$ cover the set $\{v'<0\}$ in the Vitali sense, that is, every point of $\{v'<0\}$ belongs to arbitrarily small such intervals. By the Vitali covering lemma, there is a finite disjoint family of these intervals whose sum of lengths is greater than $\frac12(b-a)$. In other words, labelling these intervals $[c_{2k-1},c_{2k}]$ for $k=1\dots n$, there exists a finite sequence $$c_0:=a<c_1<\dots <c_{2n+1}:=b$$ such that $$v(c_{2k})<v(c_{2k-1})$$ and $$\sum_{k=0}^n(c_{2k+1}-c_{2k})=(b-a)- \sum_{k=1}^n(c_{2k}-c_{2k-1}) \le \frac12(b-a).$$ Therefore
$$ v(b)-v(a)= \sum_{j=0}^{2n} v(c_{j+1})-v(c_j)\le \sum_{k=0}^nv(c_{2k+1})-v(c_{2k})= $$
$$=\sum_{k=0}^n\frac{v(c_{2k+1})-v(c_{2k})}{c_{2k+1}-c_{2k}}(c_{2k+1}-c_{2k})\le \sum_{k=0}^n(c_{2k+1}-c_{2k})\max_{0\le k\le n} \frac{v(c_{2k+1})-v(c_{2k})}{c_{2k+1}-c_{2k}} =$$
$$\le\frac{b-a}2\max_{0\le k\le n} \frac{v(c_{2k+1})-v(c_{2k})}{c_{2k+1}-c_{2k}} $$$$\le\frac12(b-a)\max_{0\le k\le n} \frac{v(c_{2k+1})-v(c_{2k})}{c_{2k+1}-c_{2k}} $$
That is, for the maximising index $k$$k^*$, the interval $[c,d]:=[c_{2k+1},c_{2k}]$$[c,d]:=[c_{2k^*+1},c_{2k^*}]$ has $$\frac{v(d)-v(c)}{d-c} \ge2 \frac{v(b)-v(a)}{b-a}.$$ If we iterate this procedure we get a nested sequence $[a_n,b_n]\subset [a,b]$ with $\frac{v(b_n)-v(a_n)}{b_n-a_n}\to\infty.$ If $x_*\in\bigcap_{n\ge0}[a_n,b_n]$, we have $\limsup_{x\to x^*}\frac{v(x^*)-v(x)}{x^*-x}=+\infty$, a contradiction.
Rmk. Note that in the above proof, the everywhere differentiability of $v$ was used just to reach the contradiction. To put it in a positive form, by the same argument we have: Assume $v:[a,b]\to\mathbb R$ is continuous, with lower Dini derivative $D_*v(x)\le0$ a.e., and $v(a)>v(b)$. Then there is a point $x^*\in[a,b]$ with infinite upper Dini derivative: $D^*v(x^*)=+\infty$.
It is clear that we can apply this result locally, so that actually there are infinitely many points where $D^*v=+\infty$. Moreover in the construction of the intervals $[\alpha_n,\beta_n]$ we can skip every point in a given countable subset as limit, so that actually the set $\{D^*v=+\infty\}$ is uncountable. Or better: if at the $n+1$-th step we pick two disjoint closed intervals within every interval of the $n$-th step, we get a whole Cantor set $K\subset\{D^*v=+\infty\}$, thus of cardinality $\bf\mathfrak c.$ This is what happens e.g. for the Cantor-Vitali function, for which $C=\{D^*v=+\infty\}$ is exactly the triadic Cantor set. This example suggest that in general one should have $v(\{D^*v=+\infty\})\supset [v(a),v(b)]$, at least up to negligible sets. I'd try to post a proof of this soon.