Как правильно прикрепить вложенный файл?
Три простых шага для решения данной проблемы:

1. Посмотреть на календарь и уточнить, какой сейчас век на дворе. 
2. Аккуратно выделить этот код, и нажать клавишу Del
3. Скачать phpmailer
4. Забыть все эти кустарные ковыряния как страшный сон.

В итоге код должен получиться примерно таким:

require 'PHPMailerAutoload.php';
    $mail = new PHPMailer;
    $mail->setFrom('from@example.com', 'First Last');
    $mail->addAddress('whoto@example.com', 'John Doe');
    $mail->Subject = 'PHPMailer file sender';
    $mail->msgHTML("My message body");
        // Attach uploaded files
    $mail->addAttachment($filename1);
    $mail->addAttachment($filename2);
    $mail->send();
следует понимать, что отправка почты - это не просто копирование в свой скрипт каких-то определенных сочетаний символов, которые случайно сработали в прошлом веке у автора какой-либо допотопной статьи. Это гораздо более сложный процесс, который включает множество нюансов. И поэтому отправку почты надо не лепить вручную на ходу из навоза и палок, а доверить проверенному и отлаженному решению.
По приведенному коду проблема, скорее всего, тут:
//$body .= "Content-Disposition: attachment" . $eol;
$body .= "Content-Disposition: attachment" . $eol . $eol;
$body .= $content . $eol;

кроме того, общий Content-Type лучше делать multipart/mixed.

Также, $filename (и другие строки типа $from->name, которые вы включаете в заголовки) должны кодироваться по-хорошему. Длинные заголовки - разбиваться на строки.

Короче, граблей там много. Возьмите готовую библиотеку