Necesitas permitirle al navegador que cachee la página. Aunque sea por un par de minutos.
Prueba incluyendo las siguientes cabeceras hasta arriba en tu código (cuando menos antes de imprimir cualquier cosa):
Código PHP:
$offset = 180; //número de segundos que le dejarás cachear
header("Cache-Control: max-age=".$offset.", must-revalidate");
header("Pragma: cache");
Si tienes cualquier otra cabecera que impida que el documento se cachee, hay que quitarla.
No sé por qué tenemos la maña de no dejar cachear las páginas en el browser del cliente. Tan noble que es este recurso. Debería ayudarnos más que perjudicarnos.