The THD you have observed depends on the excess gain you have provided.
In theory, the loop gain must be exctly unity at the oscillation frequency.
However, it is impossible to exactly meet this value.
Hence, it is normmal to choose a loop gain value slightly larger than unity (perhaps 1.1).
For a Wien oscillator this would mean: Gain stage with a closed loop gain og Acl=3.1.
In this case, we have some clipping (THD) for the sine wave.
For Acl=3.5 oyu will have more clipping (larger THD).
What was your value?
For a better THD you must use a soft amplitude control (soft non-linearity) - using diodes or an amplitude-controlled resistor (FET).
Comment: The method as proposed by barry (foregoing post) seems to be rather rather complicated - however, it is one of the best with respect to THD.