I agree with @PolyGeo, this type of processing tends to be much easier if scripted in python, as you are now discovering the limitations of modelbuilder, not particularly great for looping type workflows.
That said if you have the very latest version of ArcPro (2.7) then you can use the new Iterate Layers iterator which can step through layers in a map ...
The correct way to perform shortest path is to use Travelling Salesman algorithm, ( as per FelixIP comment) - which has been implemented in ArcGIS in the Network Analyst extension.
You would need to create some network data first though, this could ...
I find ModelBuilder not suitable for this type of processing and is done much easier with a Python script. That said and as you appear to be seeking a ModelBuilder solution, you say you have a 1 to 1 numeric match between table and featureclass.
Explore using a single model driven by a FOR iterator this will create your 1,2,3... and using inline variable ...
Soft reset of user profile:
Close ArcMap and/ or any ArcGIS Desktop software/apps open on the
machine in question.
Go to the following location in file explorer on the machine: C:\Users\<your username here>\AppData\Roaming
Rename the ESRI folder to ESRI_old
Close file explorer
Open ArcMap and perform the task
If the issue remains:
Restart the ...
Yes. If you're running the tool as a tool (not from the Model window), you need to make model parameters. If something is a parameter, the default geoprocessing environment is set to add those outputs to your map. Note - you cannot add the result to an MXD other than the one you're in. To do that, you'll need to write a Python script, make that into a tool ...