Hi Cyril,
I'm afraid that this is a (known) problem within the Perl regex engine itself.
I have reported it, but I don't believe that it has been fixed yet. :-(
I can't even offer you a workaround (if I had one, it would already be
coded into Regexp::Grammars).
Adding elements to an array within a regex is the underlying problem,
so if you need to parse large numbers of repetitions into an array then
you may have to consider one of the other parsing modules
(Parse::RecDescent or Parse::Yapp or Marpa).
I'm very sorry not to have a better answer for you,
Damian