Try
return query1.Count() > query2.Count();
You should not try to run two unrelated requests in the same server call, but here it is:
SELECT CASE WHEN (SELECT COUNT(*) FROM Products)
> (SELECT COUNT(*) FROM Orders)
THEN CAST(1 as bit)
ELSE CAST(0 AS BIT)
However, I seriously doubt that you can force LINQ to create such a query. Instead, you will need to call the stored procedure.