Instead of using two separate loops for controlling the elevator and thrust, I would recommend to use the TECS (Total Energy Control System) algorithm which simultaneously controls the elevator and the throttle of the aircraft to manipulate the energy state of the aircraft.
The idea behind this algorithm is to control the energy state of the aircraft. One has to realize that the elevator only changes the energy distribution between the kinetic energy (speed) and potential energy (height), while only the throttle introduces or deletes energy! With this in mind, one can easily calculate the energy required for a given airspeed and climb command, calculate the energy distribution between potential and kinetic energy, and then control the elevator and throttle to realize the demanded energy state and distribution.
The energy of an aircraft can be easily described by
$E = m \cdot g \cdot h + \frac{1}{2} \cdot m \cdot v^2$
Dividing by the weight of the aircraft $m\cdot g$ and differentiating once, yields the energy rate of the aircraft per weight:
$\dot{E} = \dot{h} + V\cdot \dot{V}/ g$
And further dividing by $V$ yields the specific Energy rate
$\dot{E}_s = \gamma + \dot{V}/ g$
Note that $\dot{h}/V\approx\gamma$ if the small angle approximation is made.
The classical TECS algorithm is displayed below.
The TECS algorithm calculates an specific Energy error (how much energy is lacking) $\dot{E}_{s,c} - \dot{E}_s$ with $\dot{E}_{s,c}$ indicating the commanded specific Energy rate to achieve the commanded descent/climb rate and target acceleration ($\dot{V}$). To do this, a classical PI Controller is used (these are the KTI/s and KTP blocks in the diagram). The result is then given to the throttle command to change the throttle such that the desired energy rate is achieved.
Similarly for the elevator the energy distribution term $L = \gamma - \frac{\dot{V}}{g}$ is formed. Analogously to the throttle command, the pitch command is formed by first calculating a commanded energy distribution $L_c$, forming the energy distribution error $L_e = L_c - L$ and using a PI controller to achieve the desired value.
It should be noted that another control loop for controlling pitch attitude and dampening short period motion should be introduced in the "airplane dependent design" side of the algorithm
This established algorithm was first developed by Lambregts and has since been applied quite successfully in a number of applications. For example by NASA on their Boeing 737 test aircraft or the popular UAV open source control software ArduPilot and Pixhawk PX4.