The easiest solution is to not have functions that do double
duty as methods. Either don't use objects (probably not
reasonable) or don't use normal function calls. Make all
your subroutines be methods, then say:
sub some_public_subroutine {
my $objref = shift;
#blah blah
$objref->some_private_sub("arg1", "arg2", "...");
}