Many people will attribute the "6" in "Perl 6" as the cause, but I attribute it to the "Perl" in "Perl 6". Perl 6 appears to be a sufficiently enough different language from Perl 5, much more than the apparent difference between Perl 4 and Perl 5, that it should have had a different name, not just a different version number, out of the gate. Or maybe Perl 6 changed too much, too soon to just be a single increment in the version number. The object model, the runtime, the syntax, more things were explicitly operators (I never really cared that .. was an operator in perl 5, but perl 6 seemed to make such a big deal about operators that now it seemed like you had to be concern much more with precedence, for example), more operators, more symbol/punctuation use, different idioms, a language agnostic interpreter. Compare the python 2 to python 3 transition/marketing. Calling it "Python 3000", even as just a nickname, early on may have helped indicate that it was a major change. Tools like 2to3 end up producing code that is still easily recognizable as python, because the idioms are not wildly different. People will be able to call themselves "python programmers" independent of their experience with either version. But it's still not a smooth transition and people are still asking "which version of python should I start with", but the answers are less dire than with perl.
The ambitiousness of perl 6 really warranted a different name for the language, and more explicit breaking ties with Perl's established and productioned legacy. This would have helped both projects I think. Even working on (vs in) perl 5 is somewhat considered a dead end, because it has perl 6 looming over it. It ends up doing a disservice to the livelihood of both projects.