Спасибо за внимание к моей проблеме.
Используется MiKTeX 2.1, подключаются следующие пакеты:
\documentclass[a4paper]{article}
\usepackage[cp1251]{inputenc}
\usepackage[english, russian]{babel}
\usepackage[intlimits]{amsmath}
\usepackage{amsthm}
\usepackage{amssymb}
\usepackage{amsfonts}
\usepackage{eucal}
\usepackage{mathrsfs}
\usepackage{hyperref}
Вырезки из log-файла:
This is TeX, Version 3.14159 (MiKTeX 2.1) (preloaded format=latex 2000.11.28)
LaTeX2e <2001/06/01>
Package: amsmath 1997/03/20 v1.2d AMS math features
Package: amsthm 2000/10/26 v2.08
Package: hyperref 2001/12/06 v6.71x Hypertext links for LaTeX
Package hyperref Info: Bookmarks ON on input line 1712.
Package hyperref Info: Hyper figures OFF on input line 1731.
Package hyperref Info: Link nesting OFF on input line 1736.
Package hyperref Info: Hyper index ON on input line 1739.
Package hyperref Info: Plain pages ON on input line 1744.
Package hyperref Info: Backreferencing OFF on input line 1751.
Полученный dvi-файл просматриваю Yap'ом
или перевожу в pdf утилитой dvipdfm (без параметров),
или перевожу tex-файл в pdf утилитой pdflatex (без параметров).
Результат один и тот же: если теорема или раздел начинаются
посередине страницы, то гиперссылка создается правильная,
а если вверху страницы, то \pageref показывает правильный номер,
а гиперссылка указывает на предыдущую страницу.
Может быть, это можно исправить, добавляя искусственные пробелы
в определениях теоремоподобных конструкций?
Что такое средства борьбы с overfull'ами?
Я ставлю \sloppy, а в плохих местах изменяю текст так,
чтобы не было overfull'ов и underfull'ов.