For what it's worth, depending on your Photoshop skills, I have had some success in attenuating the banding manually [ most prominant over large bodies of water, as you said ] by creating a selection via the Select > Color Range... option in Photoshop, based on the output of bands B8A and/or B11 ( actually, I was using the Moisture Index, which is a combination of both ), where the banding is most visible [ which makes it easier to create a selection ].
Once the strips you want to alter are selected, then you can switch back to the true color image [ presumably sitting on its own layer ], and use the selection thus created to alter the contrast / hue-saturation / color balance / curves / etc., to match adjacent strips better. ...It's not the best, but it kind of works, as far as I can tell.
Note: If you are good with Photoshop, an alternative method, in lieu of creating a selection via the Color Range option, is to simply use either the red, or the green, channels of the Moisture Index bands — which have the most contrast, ergo the most visible banding — as a layer mask to a Curves adjustment layer, sitting on top of what you wish to "un-stripe" ( in my case: the true color satellite image ). ...The advantage of Curves is that one can adjust brightness and contrast, as well as shift the hue and saturation, via a single adjustment layer ( by adjusting the R, G, B channels of the Curves adjustment layer, individually; usually by bowing them up or down ). This would be the most precise method, overall. The blend mode of the curves adjustment layer can also be changed from "normal" to "luminosity" should you wish to keep saturation unaffected.
Finally, another option, in Photoshop, is to use the Blur > Surface Blur... filter [ no prior selection necessary ], and then use the history brush, afterwards, to paint back the areas of land that might have been altered by the surface blur. The negative, with this method, however, is that you do lose detail over the water areas.
Note: Obviously, all this presumes you are only interested in maximizing esthetic uniformity, not in scientific accuracy.
Addendum: It might be possible to feed the manually fixed images into an AI algorithm to teach it to remove the banding automatically. But, that's a whole different ballgame! ☺
Note: For the Curves layer mask, I was using the red channel of the Moisture Index, which is a false-color image I got from the Sentinel Playground, derived from bands B11 and B8A ( which are both grayscale, and at 20 meter resolution ). When working with the original JP2s, from the satellite data, you could create such a 'band mask' by using only band B8A, which seems to me to look more 'bandy' — following tweaks, to emphasize the banding ( see illustration, below ).