A biblioteca PyPdf em Python facilita o rearranjo de páginas em um arquivo PDF. Aqui está um pequeno script que gira cada página e reduz a metade do tamanho. Aviso: não testado.
#!/usr/bin/env python
import copy, sys
from pyPdf import PdfFileWriter, PdfFileReader
input = PdfFileReader(sys.stdin)
output = PdfFileWriter()
for p in [input.getPage(i) for i in range(0,input.getNumPages())]:
p.rotateClockwise(270)
(w, h) = p.mediaBox.upperRight
p.mediaBox.upperRight = (w/2, h/2)
output.addPage(p)
output.write(sys.stdout)