Sadly the queries that retrieve listeners from the listener tables don't specify an ordering, e.g.:
select id from AssetListener_reg where listener = ...
select listener from AssetListener_reg where blocking = ...
In Oracle DB there is no way to reliably predict or influence the ordering that comes back from a query, except by using an explicit ORDER BY. See http://stackoverflow.com/questions/899514/default-row-ordering-for-select-query-in-oracle for more description on that.
It does seem like it could be useful to determine the order so I have logged enhancement request 16998818 "ALLOW FOR ORDERING OF ASSET LISTENER EXECUTION" for this.