Thank you Gianluca for your generous help (and Hans too). I feel like I need to give back to this forum so I am not free riding, but I am not an advanced user of Mathematica, and I also am daunted by the sheer number of questions.
In any case, in the past, when I was not dealing with the list structures, I would pass all the elements of the lists as individual arguments to ffoutsuper, and prevent evaluation in the eqnlist by requiring that the arguments to ffoutsuper be Real numbers (which allowed me to pass it arguments like a[1,1][t] in eqnlist. Now I was trying to do similarly, by requiring certain of the arguments to be vectors of numbers (there is also a scalar that is not always there, or I could use it, but as you saw in the previous example, even when it is there, Derivative doesn't like it when there are other arguments which are lists), which happens once NDSolve starts evaluating.
I am enclosing the file that gives a bit more information about the eqnlist (though not about the intricate details of ffoutsuper, which itself calls another NDSolve, and other functions that need to be passed the scalars, vectors and matrices that I am passing to ffoutsuper. Perhaps there is some other way to create the eqnlist to be passed to the top level NDSolve without evaluating ffoutsuper (as in delatyed evalutation), while having it evaluate later when taking derivatives with respect to the non-time variables?