Zašto vučeš celu tabelu? Nije fatalno za pretpostavljenih dvadesetak naslova, inače jeste.
Imaš jedan upit: SELECT COUNT(*)... - rezultat možeš i da digneš u sesiju tako da se ovo tera samo na prvoj stranici.
Takođe je prisutna i konstanta ili promenljiva $texts_per_page - koliko prikaza po stranici - odakle računamo koliko ima stranica.
Ako nemamo $_GET['page'], $page je 0.
$start_text = $page * $texts_per_page;
Konačno upit: SELECT * FROM tabela LIMIT $start_text, $texts_per_page
Preostaje samo ispis...