El error no es causado por la creación del índice. El error se produce TRY_CAST
cuando los valores de columna calculados se evalúan en la creación del índice.
Si ejecuto esto:
SELECT TRY_CAST(REPLICATE(CONVERT(nvarchar(MAX), N'a'), 4001) AS bigint)
Me sale el mismo error.
La documentación dice (énfasis mío):
Si la conversión tiene éxito, TRY_CAST devuelve el valor como el tipo de datos especificado; Si se produce un error, se devuelve un valor nulo. Sin embargo, si solicita una conversión que no está explícitamente permitida, TRY_CAST falla con un error.
Ahora, no está exactamente claro en qué casos fallará con un error (parece un poco tonto dado el punto completo de la función, pero de todos modos ...), por lo que podemos arreglar el código transformando los valores de entrada (use algo razonable para los datos en su tabla), ya que no hay necesidad de procesar una cadena enorme cuando no cabe en un bigint de todos modos:
SELECT TRY_CAST(LEFT(REPLICATE(CONVERT(nvarchar(MAX), N'1'), 4001), 100) AS bigint)
Esto regresa NULL
ya que el valor no es válido, pero no bombardea con un error.