Anzitutto una piccola differenza c'e`.

In un caso usi una RE:
var re = new RegExp("^[0-9a-zA-ZàèìòùÀÈÌÒÙ']*$");

Nel secondo una stringa (usata come RE)
var re = /^[A-Z]{6}\d{2}[A-Z]\d{2}[A-Z]\d{3}[A-Z]$/;

Ma forse non e` quello il problema.

Dovresti postare anche come vengono richiamate le due funzioni: potrebbe essere che in un caso usi onblur e nell'altro onchange.