Dunno if I'm grokking your situation very well, but have you tried something similar to:
$success=mail($email,$subject,$body,$from);
if ($success) {
echo "It works!";
} else {
echo "Mail crapped out again.";
}
I've never used "return" to call [man]mail/man, so I dunno what's up with that (but I've basically got to a point with PHP where I feel like I've learned enough to do what I want to do).
At any rate, assuming we get the "else" path above, I'd start by reading mail logs on the server. Of course, since you said "my ISP/Sever does send mail", you don't have access to those?
Does this "framework" (for lack of a better term) redefine the [man]mail/man function? Are EMAIL_FROM_NAME and EMAIL_FROM_ADDR valid at the time the code above is executed? I assume they have to be defined somewhere else, in which case testing a call to
defined('EMAIL_FROM_NAME');
might shed light on the subject....
Finally, are you sure it's not being sent? Maybe it's rejected with some error (in which case adding an "Errors-to" header might help), or caught in a spam filter somewhere....