You still have a problem.
The earlier diagram only worked because somewhere else, neutral and ground were shorted together. So, in the garage, neutral and ground were effectively the same thing, and all current used in the garage was returning via that bootlegged neutral-ground bond. This is very bad. You must hunt that down and kill it, because it creates a hazard even after you correct the white-wire misuse.
I see 4 Code-legal ways to do this, and it's really a question of what's easier.
You can run /4 or /2/2 cable to replace the /2 cable. /4 is a pain to source, though. The particulars are described in someone else's answer.
You run /3 cable to replace the /2 cable. The /3 black powers one light, the red powers the other light, the neutral is common to both lights. In this case, you hang the receptacle off one light or the other.
You run /3 cable in addition to the /2 cable. In this case, the lights are wired the same, but the /2 becomes always-hot and neutral, and those two wires go to the receptacle ONLY. That neutral is used for nothing else!!!! This makes the receptacle hot all the time, which is awesome for a future garage door opener!
You lay conduit where the /2 was, and run any needed wires therein. At that point, sky's the limit.
I don't like any of the above because I am afraid to bust out drywall and other wall finishes.
- My preferred solution is smart switches.
Smart switch solution
I know you aren't looking for in-garage switches, but the "master" smart switch (the one that actually does the switching) needs to be in the garage. That allows us to bring over only always-hot and neutral, which is possible with the existing cable. If you can find a smart "module" that does the same thing without a switch and maybe lives inside the lamp rose, that is fine.
Each "master" smart switch makes 3 connections: to always-hot, neutral and the load/switched-hot to its light.
The "remote" smart switches are then installed inside the house, and "paired" with the respective masters. So you now have a total of 3 switches in the house (patio light, remote for garage light, remote for hallway light). These "remotes" only attach to "always-hot" and "neutral", and use powerline signaling to talk to the masters. So we're talking a smart-switch which does that, such as Insteon.
In the garage, we have a 1-gang space for the receptacle. We need 3 gang spaces (unless modules will be used): 1 for GFCI receptacle (unless otherwise protected), and two switch masters. All these are fat and bulky.
If it's just handy-boxes nailed to unfinished walls, then hit the electrical supply and get a 4-11/16" square box (cheaper at electrical supply), an appropriate mud ring for 2 smart switches, a deep 1-gang handy-box, and a conduit nipple for connecting the two.
If it's finished walls, then get some Wiremold style surface conduit: a "starter box" goes right over top of the existing receptacle, then a nipple or short conduit run over to either a deep 2-gang or two 1-gang's. Remember these switches and GFCI receptacles are bulky.
Then you just wire it all up: hot, neutral and ground to receptacle and both smart switches, and LOAD outputs of both smart switches to their respective lamps.
Lastly you change the wiring in the house so always-hot and neutral go to both smart remotes and also the /2 cable to the garage.