When you want non-blocking actions, you nearly always also want an event loop. LWP::UserAgent::POE should work if you chose POE as event loop.
If you are not settled on LWP::UserAgent for getting the files, you could also take a look at AnyEvent::HTTP, Mojo::Client and other goodies that CPAN has to offer.
Perl 6 - links to (nearly) everything that is Perl 6.
Comment on Re: GET a file without waiting for the result?