Your message indicates you are trying to fix an image that was already sharpened but shows excessive haloing, rather than avoiding the problem in the first place. Correct?
I haven't tried this yet or or thought of the individual steps, but intuitively it seems you could:
1. Create an edge mask. For simplicity, you can pilfer the first part of Fred Miranda's free 8-bit sharpener. (There are many ways to create an edge mask, but this is pretty good.)
2. With the edge mask selected, select color range > highlights. That should capture just the halo highlights around the edges. (I assume that leaving shadow areas is okay, and that the highlights are the problem.)
3. I'd probably try feathering, blurring, or tweaking the selection, but I'm not sure where to go with this. Maybe this step should come before the color range selection, with the "minimum" or "poster edges" filters run on the edge mask. For now call it optional.
4. With the highlights selected, you can edit > fill them in with 50% gray (or a lighter tone), or run curves and tone them down that way, or whatever. Or put them on a layer set to multiply. Lots of options.
More options: somewhere along the way you'd want to consider an anti-aliasing technique to remove color distortions along the edges. Better a white halo then a magenta one, I'd think. Maybe step 4 could be a color blur of the feathered highlights, set to darken? As with all things in photoshop, there are numerous ways to skin this cat.
Hope that is useful.