Hola helenp.
Lo primero, paypal:
Te explico como yo lo haría:
0 - en la cuenta paypal hay que activar las notificaciones de pago instantáneas (IPN), ahí deberás poner una url que apunta a un archivo de tu servidor que recibe las notificaciones, por ejemplo:
http://web.com/ipn.php
1- en el formulario ya cuando te han dado los datos haría un "insert" a la bd pero dejando un campo del registro, llamale "pagado" a "false", y en una cookie o en session guardaría el id de la reserva en cuestión.
2 - en ese punto del formulario de reservas pondría el boton para acceder a paypal y pagar, entonces cuando el cliente hace el pago se envia por POST unas variables al "ipn.php", entonces compruebas el estado del pago con esas variables, y si es correcto recuperas de session o de la cookie el id de la reserva y en pagado le haces un update para que quede en "true".
3- cuando has montado en paypal el botón de pagos configuras una URL a donde dirigir a los clientes cuando el pago se haga correctamente, por ejemplo
http://web.com/completo.php, en ese archivo ya solo te queda consultar nuevamente cual es el id de la reserva según la cookie o session y mirar si pagado esta a "true" o "false" y según que informar al cliente que todo ok o que hay problemas con el pago.
no obstante no tengo mucha experiencia con paypal, alguien que sepa bien que me corrija si me he equivocado.
por otro lado lo del pdf creo que ya has encontrado algo, pero sino busca "fpdf".
un saludo.