Let $f,g: \mathbb R\to \mathbb R$ be functions such that $g(x)\ge 0,\ g(0)=0$ and $g$ is differentiable at the origin. Suppose for some $c > 1$, $$f(b)-f(a) \le g(|b-a|)^c$$ for all $a,b\in \mathbb R$. Prove that $f$ is infinitely differentiable on $\mathbb R$.
I believe the RHS should read $(g(|b-a|))^c$.
My thoughts: for $h > 0$ I can write the above as $$\frac{f(x+h)-f(x)}{h}\le \frac{[g(h)]^c-g(0)^c}{h}$$
and taking $\lim$ as $h\to 0+$ seems to give $f'_+(x)\le ((g(x))^c)'|_{x=0}=cg(0)^{c-1}g'(0)=0$. (Since $g$ and $t\mapsto t^c$ are differentiable at the origin, we know that the right derivative equals the derivative). But there are a couple of concerns:
The major concern is what to do with $h < 0$? If the same were true for $h < 0$, it would follow that $f$ is constant. But the inequality is reversed if $h<0$...
The answer is based on your idea after some modification.
We have: $$ f(a)-f(b)\leq(g(|a-b|))^c \,\land \, f(b)-f(a)\leq(g(|a-b|))^c \implies |f(a)-f(b)|\leq (g(|a-b|))^c $$ From which for $h\neq 0$, letting $h\to 0$: $$\left |\frac{f(x+h)-f(x)}{h}\right | \leq\frac{(g(|h|))^c-(g(0))^c}{|h|} \to (g^c)'(0+) = 0 $$ So that by the squezee theorem $f'(x)$ exists and we have $$ f'(x)=0 \implies f(x)=c $$ For some real $c$. Which means the function $f$ is infinitely many times differentiable.