Hi,
0.52° isn´t much, for a real circuit. Any stray capacitance may cause this....or the variation of an analog anti-aliasing filter. You know this 0.52° equals to only about 131 ns.
* You didn´t mention data width... but I expect the FFT to calculate way more precise than 0.52°.
* 50000 samples with 1MHz gives a window of 50.000ms. This means you get 550 fullwaves in your window. Be sure that this really is the integer value "550".
****
I wonder how your test circuit looks like.
On the one side it sounds like a true circuit...but what is your reference against you measure your signal? A second channel? An absolute angle? If so, how do you generate it?
If you generate it sychronously to the sample clock, then you don´t need windowing.
Klaus