Чтобы вручную управлять печатью, вам нужно написать свои собственные методы печати. Это широко освещалось в сети разочарованными разработчиками ReportViewer.
По сути, идея заключается в том, что вы создаете свой собственный рендер для печати. Вы должны преобразовать все страницы отчета в изображения (по потоку файлов или памяти) и передать изображения на принтер.
Совет: если вы решите использовать MemoryStream (это более простой метод, поскольку он не требует очистки), имейте в виду, что если ваши отчеты очень большие, у вас могут возникнуть проблемы с нехваткой памяти.
Наличие пользовательского метода печати даст вам полный контроль над печатью отчета.
Статью MSDN по этой теме можно найти по адресу http://msdn.microsoft.com/en-us/library/ms252091%28VS.80%29.aspx
Кроме того, если вы воспользуетесь Google "Пользовательский просмотрщик отчетов для печати", вы найдете много статей, связанных с этой темой.