I notice that you don't have an
or die "Can't open dir $Path->{'real'}: $!\n";. It could tell you a lot as to why its failing. To check to see if the tainting is ok make sure you have the -T switch on. Otherwise it won't complain if there is an issue (unlikely). I'm currently running RH 7.0 with 5.6.1 and have no problem running this test code. Make sure that your permissions are ok (its unlikely that they are not.).
#!/usr/bin/perl -wT
use strict;
my $Path = {};
$Path->{'real'} = "/usr/";
opendir(THE_DIR, $Path->{'real'}) or die "Can't open dir $Path->{'real
+'}:$!\n";
close(THE_DIR);
Update: Also you might want to put a print to STDERR or a LOGFILE to print out $Path->{'real'} to see if the module that pulles the conf in is doing its job.
Hope this helps,
BMaximus