El problema son las comillas que le metes antes del eval ($evaled = '"'....). Prueba este codigo solo, sin lo tuyo:
Código PHP:
<?php
$_POST["prueba"] = "ejemplo";
$_POST["prueba2"] = "ejemplo2";
$custom = "";
foreach($_POST as $key => $value)
{
$custom .= "\$" . $key . " = \"". $value . "\";";
}
eval($custom);
echo "prueba vale " . $prueba . " y prueba 2 vale " . $prueba2;
?>
Imprime:
prueba vale ejemplo y prueba 2 vale ejemplo2
Y eso quiere decir que evaluo bien el codigo php.
Saludos.