Gravity can't be perfectly simulated using numerical methods like Euler's Method.
Optimally, in a situation like this, the position graph should be periodic and cyclical, always touching the two lines. And the tangent when the two particles meet should be vertical.
However, this fails because the particle gains velocity falling into the center, and thus spends less frames moving away from the center and thus experiences less total velocity.
This isn't an issue in physics because the universe's framerate is functionally infinite, so the accelerations get added up properly anyway. Not feasible in this simulation.
The two easiest options to implement are to add a softener to the gravity formula to remove asymptotes (option 2) or remove gravity at low distances (option 3).
I decided to use option 3, with a minimum distance of 40, for the simulation