Custom Static Mesh Pawn doesn't land correctly

I have created my own static mesh character. It is a spaceship that sits on two engines that work like tracks to move the ship. The movement and rotation works fine for the ship. But when the ship “jumps” up and then lands it tips down forward then corrects itself out. Before I had this working by changing the center of mass on my engine tracks. However, now the COM offset is no longer working and makes my ship tip upwards during forward movement. Anyone have any solutions to this problem? The ship is a custom class written in C++ and the engine tracks are static mesh classes customized in c++.