実はもっと簡単な方法があった

 パッケージ内関数検索や、eval なんてしなくていいんですね。

sub dispatcher
{
    my $callee = shift;
    my $param  = shift;

    my $pkg    = caller;
    $pkg->can($callee) or die "Illeagal function called.\n";
    return $pkg->$callee($param);
}

1;

 これで一発でした。
 オブジェクト作ってメソッド化すると、BBS とかの Form のコマンドで分岐する奴を一行で書けるようになりますね。
 いやはや、ごろごろしているうちに、時代は進んでいました(w