Amplitude and Phase of FFT gives messy results - Matlab
If you round off tiny magnitudes to zero (to remove numerical noise), you should also zero the matching phase result bins.  The phase of noise is usually just random.