Gaussian Process based Model Predictive Control (GP-MPC), where the system model is learned from data by a Gaussian Process (GP) statistical model, has gained increasing interests in the control community. This is due to the modeling flexibility of GPs and their ability to provide probabilistic estimates of prediction uncertainty, which can be used to assess and guarantee the performance or safety of a control system. However, GP-MPC optimization problems are typically non-convex and highly demanding, and scales poorly with the model size, causing unsatisfactory solving performance, even with state-of-the-art solvers. These drawbacks hinder the application of GP-MPC in large-scale systems and in real-time control. Our previous work has developed a new concept, linearized Gaussian Process (linGP), and a linGP-based Sequential Convex Programming (linGP-SCP) algorithm that can accelerate solving GP-MPC problems significantly. However, the algorithm ignored uncertainty propagation in its multi-step GP predictions, resulting in over-confident predictions and an over-optimistic controller. This paper completes linGP-SCP by incorporating uncertainty propagation into GP-MPC and overcoming the computational challenge of uncertainty propagation to maintain the scalability and good performance of the overall algorithm. The improved algorithm is validated in two numerical examples, including a real-time control example of swinging up a single-arm pendulum.