One way to get a more consistent glob behaviour is to use File::Glob::bsd_glob (File::Glob is a core module since Perl 5.6). If I remember correctly you don't need to escape whitespaces with that one, and all quotes are taken literally.
Comment on Re: Unexplained glob behavior vs. Bash shell