I've found a bug in llOverMyLand() that can cause it to incorrectly report TRUE. It happens when the owner's land is against a sim border and the avatar being tested is in the next sim, but still inline with the owner's land.
I believe I know whats happening; if you use llDetectedPos() on the avatar, the vector is outside the normal range (<34,-2,30> or <260,48,42> for instance) and llOverMyLand() is rounding the out of bounds number to within the sim and checking there. A workaround is to manually test the X and Y coordinates to make sure they are within the same sim.
I've tested this in multiple sims on multiple borders with multiple land owners, both personal and group owned, and I have bug reported it. I just wanted to let other people know about this.