The FS autopilot uses elevator trim for pitch changes. Altitude hold works through pitch changes generated by an altitude error compared to the selected altitude.
When the error exists, the autopilot attempts to correct it and tends to overshoot the correction leading to an oscillation.
At high altitude and high true air speed inertial forces are strong, but aerodynamic damping is reduced since it comes from forces generated by indicated air speeds, which are lower.
This is why you get the oscillation at high altitude only.
Unfortunately there is no way to simply control the stock autopilot in pitch.
That leaves you with having to increase the pitch damping or as above, increase the longitudinal moment of inertia so that the resistance to pitch changes is increased.
If you are familiar with the air file and aerodynamics, I would suggest getting Yves "Flight Dynamics in Microsoft Flight Simulator" and study section 6.3.2. You might then decide to increase pitch damping Cmq.
Roy