$\begingroup$It is possible to de-noise with nodes. Since Blender's de-noising isn't something miraculous I think one can achieve similar results with Bilateral Blur node used on noisy passes. That would even have some benefits - de-noising after render is complete, so less experimentation, also does not need to use as much memory at render time with big tiles. But that's another question.$\endgroup$
– Martin ZJan 10 at 9:29

The easiest way is using some post-processing in the blender's compositor. There are nodes there like curves, color balance, which can easily isolate the highlights. Consider that in the compositor you have your "overexposed" areas really bright, but not clipped, because of 32 bit pixel color range, so you can map your colors along with the filmix mapper the way you want.
Also to isolate highlights you can use direct render passes being separated, darkened, and then combined back to the resulting image.
And another way is to cheat the renderer itself, with no compositor. You can add to your scene another sun, almost the same as your main sun, with the same settings, but make it to emit darkness instead of light. Setting its energy to a negative value will do the trick. And to keep the scene's indirect light unaffected, you have to set Max Bounces for this dark sun to zero. Here is how it looks like. (no dark sun; 50% darkness; 80% darkness respectively):