So you're having trouble solving corners when they're diagonally swapped. Based on what you're telling us, One of Two things is happening:
A) You're not doing the algs correctly.
B) You didn't actually start out with a diagonal Swap.
To help out with either of these possibilities:
A) Drill the algs. Practice them a lot and make sure you're doing them right. Make sure that when you do either the E or Y perm on a cube with solved corners, you get a case without any headlights. Then when you do it again, from any angle, you get solved corners. I used to mess of my E perms in a way that produced results like yours. But practice and building muscle memory helped.
B) Sometimes, the less friendly PLLs like G perms will look a little crazy, like nothing matches up, and it's hard to spot the headlights right away, especially in the heat of a timed solve. But these are "adjacent swap" cases, and doing a diagonal swap alg (like E, Y or N) will not solve the corners... you'd still be left with an adjacent swap afterwards. So until you can recognize your PLLs from all angles, you really have to check and be sure you didn't miss anything.
There are more advanced recognition techniques that I could recommend, but honestly, they're not important until you learn Full PLL. And by that point, you won't be worrying yourself about things like this anymore.