Chuck,
It appears that in ESQL (and not just our implementation via PassThruEsqlQuery), you have to implement the ORDER BY keyword with LIMIT() to limit the number of responses returned. For example the following simple query is valid, and returns the expected results:
_em1 =
new NorthwindIBEntities();
var query0 = new PassthruEsqlQuery(typeof(Customer),"SELECT VALUE c FROM Customers AS c order by c.CustomerID limit(5)");
var result0 = query0.With(_em1).Execute().Cast<Customer>();
Yours,
Robert