En PHP y la función mail() tendrías que "armar" todas las cabeceras "a mano" para hacer esa taréa .. Realmente la función mail() no implementa prácticamente -nada- de lo que cotidianamente se espera para generar un e-mail y enviarlo.
Te recomiendo que uses la classe:
PHP Mailer
http://phpmailer.sourceforge.net
Solventa todos esos problema de forma simple .. Permite enviar e-mails por SMTP directo (o usando mail() de pHP con su configuración) .. generar e-mails "multiparte" (lo que propones de HTML y texto plano a la vez) .. tambien adjuntar archivos ..
En fin .. esta classe resuelve el 99.9 problemas con el envio de e-mails en PHP.
Un saludo,