dds sine wave frequency changing

If you look at the WAV file with an audio editor (I use GoldWave) you can see that your sketch isn't generating a clean sine wave and the spectrum of the wave has harmonics all over the place.
The peaks of the waveform are almost flat which I think is caused by the low resolution of the sine wave table. Note, for example, that there are six consecutive zeroes in the table which correspond to the negative peak of the waveform. There are seven consecutive occurrences of 254 which correspond to the positive peak.

Pete