It reads more like smoke than a shadow, because it's adding with the shadows on and from the rocks and because it's entirely unaffected by the topology of the scene. The grey colour doesn't help either; hue-shift your shadows (including the ones cast by the rocks) towards blue or whatever the ambient colour of the scene is meant to be. In addition, I don't think the soft look fits the style of the rest of the art, I think a solid shape would fit better.
If you render all the shadows to the same "layer" with full opacity, and then blend the whole layer onto the scene, you can avoid the adding. You can still have tiles and characters overlap shadows even if you render the shadow layer last, by erasing those shadow pixels blocked by other elements before you render it.
Faking 3D topology is much harder, but it can also be done in 2D like this, because all your major surfaces are either horizontal or vertical (it's fine if the characters are treated as "flat" because they're so thin and are probably usually moving anyway). If each tile has a "height" attribute, you can offset the shadow by on that tile upwards by some number of pixels based on the height of the tile (overriding any shadow rendered on that height already, since the walls, etc would obscure any ground-shadows behind them). Don't render shadows that overlap visible vertical components of tiles (this can be calculated at run-time or pre-processed), since the shadows are already drawn as part of the tile (or, alternatively, render the vertical areas as fully shaded at all times, regardless of whether there's a cloud above). Even if you only do this with tile-level precision without masking out the shapes of the tiles, it can look a lot better than just a flat cloud shape, especially in motion.
Personally though, I think the clouds are unnecessary, the scene looks plenty busy as it is.
Lastly, I'm not sure it's a good idea to let the cloud shadows overlap UI elements like tile highlighting.