Thanks for all your input, guys. It's a catch-22 indeed. If I place the cloud layer just above the water I get the shadows on the water (but I need them underwater). If I put it underneath, I get the reflections in the water, even if I just use the enable secondary (as that does shadows ánd reflections). I haven't used only primary, as I just want the shadows. And I know it shouldn't be a shadow but an enhanced light effect, like a glow in the cloudwaterhaze and on the stream bottom, but that would even be more difficult I think.
I know the caustics generator, I have it. But I used a warped voronoi to make the cloud, which has kind of the same effect.
I also didn't want to make a cloud water surface, because I like the refraction that the waves cause on parts above water.
A dense pop would be another option (it did cross my mind), but the rays and shadows would be very hard. I also tried a default shader with some opacity fractal, but that would have the same effect, hard shadows. And the objects will take all light out, harder to soften it, I guess.
And clouds indeed don't have a 'visible to other rays' option.
The idea of a masked/localized hard patchy cloud layer outside the frustrum is a good one, but that very much depends on where the sun would need to be. Ah, no that wouldn't work as you would still have the hard shadows on the water.
Array of spotlights...mmm, I have to do some more thinking.
What I did now was make a very thin, very dense cloud layer (2D) just 2cm beneath the water surface, and turned the reflection of the glass shader way down (50%). Playing with colors of the cloud also helped to make them hardly visible in the reflections, and that doesn't really alter the shadow/beam effect.
I also multiplied the max height mask by a distance shader to get more bluish light further away in the murk-cloudhaze.