Diffeomorphism from Inverse function theorem
Let $f(p)=q$, $J_f(p)\ne 0$. Then $f$ maps a suitable neighborhood $U$ of $p$ diffeomorphically onto a neighborhhod $V$ of $q$. Let $g:\ V\to U$ be the inverse of $f\restriction U$. The statement of the inverse function then contains the formula $$dg(y)=\left(df\bigl(g(y)\bigr)\right)^{-1}\qquad(y\in V)\ .$$ This can be interpreted as $$dg=\iota\circ df\circ g\ ,$$ where $\iota:\ L\mapsto L^{-1}$ denotes inversion in $GL({\mathbb R}^n)$.
Assume that $g$ is $r$ times continuously differentiable for some $r\geq1$. As both $f$ and $\iota$ are infinitely differentiable it follows by the chain rule that $dg$ is $r$ times continuously differentiable as well, and this implies that $g$ is in fact $r+1$ times continuouslay differentiable.
Let $LI^m$ and $L^m$ be the set of invertible linear transformations of $\mathbb{R}^m$ in itself and the set of linear transformations of $\mathbb{R}^m$ in itself respectively. Define $\operatorname{Inv}: LI^m\to L^m$ by $\operatorname{Inv}(A)$ is the inverse matrix of $A$. First you can note that if $f$ is a function satisyfing your conditions, then $$(f^{-1})'(y)=[f'(g(y))]^{-1}$$
This implies that $(f^{-1})'=(\operatorname{Inv})\circ f'\circ f^{-1}$. Because $\operatorname{Inv},f\in C^\infty$, you can conclude from the last formula (by using chain rule) that $f^{-1}\in C^\infty$.
Update: I do not understood OP's comment in the bounty, nevertheless I give here more explanations:
Since $f'\neq 0$ we have that $\operatorname{Inv}(f'(g(y)))$ is well defined for all $y$, so the derivative of $(f^{-1})$ dependes on functions that are differentiable again. By a induction argument OP's can finish the proof. Also the proof that $\operatorname{Inv}$ is $C^\infty$ was given in the comments by @ronno. As I have wrote to @Lipschits in the comments, I know another proof of the fact that $\operatorname{Inv}$ is $C^\infty$, but it is really big and @ronnos's proof is more straightforward.