I think that there is third school:
* use [custom] http headers

The second solution approach you proposed is great for queries, like collection filtering, but it makes no sense to me send POST request just for new range of items.

My proposal:
use [custom] http headers for paggination/range, sorting
use POST request for quering/filtering

Is it Zen of RESTful collection processing or not? ;)