Per quanto riguarda più allegati credo, se non ricordo male, che basti ripetere il seguente codice per ciascun allegato:

Codice PHP:
$mail_body .= "Content-Transfer-Encoding: base64\n";
$mail_body .= "Content-disposition: attachment; filename =\"$file_name\"\n";
$mail_body .= "$encoded_attach\n";
$mail_body .= "--$boundary--\n"
anche se io ti consiglierei di utilizzare PHPMailer per gestire l'invio delle mail.
Per aggiungere campi obbligatori spetta a te effettuare i dovuti controlli sui parametri che ti arrivano dall'eventuale form.