This is simply a result of setting the light to dynamic because dynamic lights shine through all objects (contrary to static lights) and light all objects which are in range.
A fix for this (if I'm not mistaken) will only work when you don't move your dynamic lights because moving the lights somewhere closer to a darker area will have no visible effect then.
I'm not a big friend of changing the predefined shaders, I prefer to write it myself instead and not work with those macros and includes so I cannot really help here but the idea would be to multiply the whole final output (and thus including the dynamic/ specular light in your screenshot) with the TEXCOORD1 static shadow map.