Оставьте регулярное выражение как оно есть, и просто вырезайте первые
сколько там вам надо символов:
phone.value = phone.value.replace(/[^+0-9]/g, '').slice(0, 11);
А вообще, возможно вам следует посмотреть в сторону уже готовых решений (
например), вместо того, чтобы заниматься подобным велосипедостроением.