Мне кажется, неправильно делать у "версии для печати" фиксированную ширину (<div style="width:640px;">). Потому что ширина листа совершенно не обязательно 640px, особенно, если хочется печатать с альбомной ориентацией.
А если жёсткое задание ширины убрать, браузер сам будет прекрасно растягивать текст и таблицы на всю ширину листа. Что, собственно, и требуется.
1. Сделал страницу для распечатки резиновой, оставил поля справа слева.
2. Цвет фона блочных элементов при печати браузеры игнорируют, так что заголовки колонок таблиц - чёрный текст на белом фоне.
3. Гиперссылки убирать не стал - они вполне читаются в ч/б варианте, акцентируя к тому же названия.