Евгений: можно просто указать ссылку ?page=2 и браузер сделаю примерно так:
/site/catalog/ => /site/catalog/?page=2
/site/catalog/?page=1 => /site/catalog/?page=2
Это в одной Acitivity, которая по сути является контейнером, столько строк? Лично я выношу повторяющиеся методы в отдельные классы, наследуемые от Fragment, а потом реальные фрагменты наследую от них, обычно получается не более 3-х уровней наследования. Если честно, даже не знаю что ещё можно сделать.