You can get random ints directly using
Math::Random::MT::Auto, and you can limit their range using the included Math::Random::MT::Auto::Range class. This module is based on the Mersenne Twister PRNG, and should not exhibit any of the anomalies you're noting with Perl's build-int rand().
Remember: There's always one more bug.