Remember is that atan2 returns values in the closed interval [-pi, pi] so if you go from a y that is just barely positive to one that is just barely negative and x is negative, you'll experience that "sudden drop". The unwrap function may be useful to you in that scenario.
By the way, if you wanted to have theta in degrees that's not the right conversion. You should use atan2d instead. But polarplot expects its theta input to be in radians, so maybe just eliminate the multiplication by 360.