Para contar los registros disponibles no es necesario leer toda la tabla, usa la funcion count de MySQL:
Despues de eso te falta calcular el registro inicial y hacer la consulta usando
LIMIT $inicial,$porpagina y, finalmente, leer y mostrar cada registro obtenido.
Hay algunos aportes para paginar aqui mismo en FDW que te pueden servir, usa el buscador.
Manual de la funcion
list()