You could manually perform defringing in, for example, the GIMP. It may be a bit laborious, but the result is pretty decent.
* Create a mask (or selection) that includes the stars that suffer from the fringe/halos (including the purple fringe/halos themselves).
* Reject the purple color (only operating on the selected stars). It's ok if the pixels you modified are now darker than the background.
* Put this result aside.
* Now start off again with the original in a separate image (or layer).
* Use the same star mask (you may have to grow it a bit) and heal (or otherwise make disappear) the stars, including fringes/halo. The smoother the better - it should appear as if the stars were never there.
* Now layer the starless image on top of the first image (with the purple color rejected) and set the blend mode to lighten.
You should now have a fringeless and halo free image.
I attached an example I created with StarTools (see
here for original).