(я предполагаю, что это Java)
В методе класса equals главы вы можете просто сравнить ссылки на книги (то есть, используя ==, а не equals). Это только сравнение ссылок, так что это позволит избежать бесконечного цикла. Однако, если вы иногда клонируете книги, такой подход потерпит неудачу.
Еще лучшим способом решения этого конкретного случая было бы сравнение не книг, а их ISBN, поскольку это уникальный идентификатор для Книги.
В общем, лучше избегать двунаправленных зависимостей, подобных этой. Один из способов состоит в том, чтобы один из двух классов реализовывал интерфейс, чтобы не использовать его напрямую.