Hitting the nail askance you did!
This should replace the table and results in 0 errors/everything working:
our @num2nam = (
[ qw(zero 0 )],
[ qw(one '0.0.5')],
[ qw(two '0.1.1')],
[ qw(three 0.000005)],
[ qw(four 0.000101)],
[ qw(five 0.0.5)],
[ qw(six 0.1.1)],
[ qw(seven 1.10)],
[ qw(eight 1.5)],
[ qw(nine 0.1.5)],
[ qw(ten 0.1.10)],
[ qw(eleven '000005')],
[ qw(twelve '001010')],
[ qw(thirteen 3.0014)],
[ qw(fourteen 3.1)],
[ qw(fifteen '3.0014')],
[ qw(sixteen '3.1')],
);
Those items were being dequoted twice, so the ones that need to be quoted had to be quoted twice, and the ones that didn't still needed quoting once.
Thanks for the hint!