Arduino nano no funciona bien alimentado externamente

Primer problema. No uses el NANO para alimentar el servo.
Según que servo sea, consumen mas de lo que puede entregar el NANO.
No veo tu 7805 en el esquema, si te refieres al del nano primero no lo es y segundo no puede entregar mas de 500mA en condiciones especiales y menos que menos alimentado con 12V porque te pasará lo que ya has contado que quemaras cuanto NANO conectes de este modo.
Alimenta el servo con 5V de fuente externa.
Comparte GND con el NANO y ahora las cosas van a funcionar.
Al Servo le debes entregar máximo 6V pero 5V sería lo adecuado.
Repito: que no vengan del NANO: