Integrability in the change of variables theorem
Solution 1:
The "easy" proof using the fundamental theorem of calculus requires a the assumption that $f$ is continuous and $g$ is continuously differentiable. Defining $F(t) = \int_{g(c)}^{g(t)}f(x) \, dx$, we have $F'(t) = f(g(t)) g'(t)$ since $f$ is continuous, and
$$\int_{g(c)}^{g(d)}f(x) \, dx = F(d) =F(d)-F(c)= \int_{c}^d F'(t) \, dt = \int_c^d f(g(t))g'(t) \, dt$$
In this case it is also obvious that $f\circ g$ is Riemann integrable.
If we drop the condition that $f$ is continuous and assume only that it is Riemann integrable and assume that $g$ is both continuously differentiable and monotone, another relatively easy proof is facilitated. A proof of the change of variables theorem using Riemann sums is given here. There is no need to prove directly that $f\circ g$ is Riemann integrable.
If $f$ is continuous and $g$ is Riemann integrable, then so is $f\circ g$. What you seem to be concerned with is the case where $f$ is Riemann integrable and $g$ is continuous. Then $f\circ g$ may fail to be Riemann integrable (under even stronger conditions than Riemann integrability of both $f$ and $g$ that you mention).
However, if in addition to $g \in C^1([c,d]$), the derivative $g'$ is non-zero. then we have an inverse function $g^{-1}$ which is continuously differentiable, mapping sets of measure zero into sets of measure zero.
Since $f$ is Riemann integrable it is bounded and the set of discontinuity points $D_f$ has measure zero. Thus, $f \circ g$ is Riemann integrable since it is bounded with discontinuity points in a set of measure zero, $D_{f \circ g} = g^{-1}(D_f)$.