You cannot guarantee the execution order for event listeners.
... is it better practice to have one element which listens for enterFrame events, and has an array of elements needing updating on enterFrames ...
This really depends on the use case. In some cases, for example a particle system, probably yes. If you have dozens of objects that form a logical set then it often makes sense to do much of the collective logic in a single manager type class. That could include a set specific update loop. This can save you quite a bit of overhead in general.
Then again, if all you are doing is:
function managerUpdate(event:Event):void
{
for(var thing:Object in set)
{
thing.update();
}
}
Then you aren't really saving that much overhead at all. Of course, in the above case, you can control the ordering of your set. You could also cull it on a frame-by-frame basis.
Also consider if there are calculations or other algorithms that can be hoisted from within the update of set instances into a manager and passed through parameters.
Without more information on your specific use case I can't be more specific.