1) Конечно удобно. Еще удобнее использовать фрейм-ворки, которые (все) используют ооп
2) Можно использовать синглтон (шаблон singleton) и в нём уже контролировать кол-во запросов. Однако тут я немного могу ошибаться (ибо сложно узнать откуда пришёл запрос: из сообщений или из загрузки страницы)
3) в самописных cms лучше использовать MVC. Тут уже идёт разделение на модели (товар, хлебные крошки), вьюхи (страница, ветрина, меню) и контроллеры, которые связывают это.
Ответил на все два вопроса ;-)