It doesn't look like the opposite to me at all. It looks like your light is a bit high and that makes the shadows stop at a short distance from the object that casts them. But then I haven't used that lib so I can't tell if the library works that way.
No, shadows are not a problem. Problem is that textures are enlightened from the wrong side.
Look closer: With Light vs Shadow [upper screen] little blobs are brighter near the source of light and darker farther away. Also, blobs with Y-axis value lower than light source Y-axis value ("above" the light source) are bright from the "front" side and those with higher value ("beneath" the light source) are dark on the "front" side.
With Light_World implementation [lower screen] it's exactly opposite - blobs "beneath" the light source are bright on the "front" side and blobs "above" the light source are dark.
I see now. What LÖVE version is that library for, and what version is your program for? I ask because there was a swap of the shader's Y coordinate at some point, IIRC between 0.9.2 and 0.10.0, and I wonder if that's at play here.
From what I get is that "invert normals" should give normal maps "concave' or "sunken" look instead of regular "convex" or "bulging" effect. I may be wrong, but I'm pretty much sure about that.
Yeah, it's not what we're seeing. If it was that, the left-right direction would also be inverted. It's only the up-down one.
It should be easy to make a quick test that inverts the Y coordinate in the shader, to determine guilt. If that fixes the problem with the orientation, regardless of whether it causes other problems, then you can dig further for how to fix it.