Like Zylann kind of referenced, you want to make your scenes as "self-contained" as possible, and I think that's the key here. This isn't an engine problem, it's some programming principles like "encapsulation" that are in your way.
Looking at the concept of a "manager" node might help you out; its whole job would be to keep track of / be the mediator for these instances you are producing. Inside the script for that manager, you can just save direct references to your instanced objects in an array as you create them, or grab them dynamically if you create them in some other way that makes them retrievable (a node-naming scheme of some kind).
Anyway, it's a programming problem. Chart out what objects are responsible for what, separate the jobs out, THEN program, and the implementation will become clearer.