Вы, безусловно, думаете в правильном направлении. Менять адрес страницы это одна из необходимых базовых вещей, которую нужно сделать в таких случаях.
К примеру, Фейсбук делает (авто) прокрутку до содержимого до которого вы «добрались», если вы уйдете читать пост, а потом нажмете (перейдете по истории) «Назад». Правда посты будут загружаться блоками, а страница прокручиваться рывками. Ваше решение в таком случае оказалось бы более правильнее что-ли.
Но увы, в реальной жизни не то что автоподргузки не соблюдается, но еще и обычная пагинация работает «через Ж».
Например, каждый наверное замечал, если мы ходим по страницам вперед, а выборка из БД сделана без всяких маленьких хитростей (простым условием с ORDER + LIMIT), то мы (задержавшись на странице) можем при переходе на следующую увидеть опять те посты, которые были на предыдущей. А казалось-бы, всего-лишь можно добавить переменную lastPostID и показывать уже без учета просмотренных…