Esta é uma reclamação de longa data sobre as restrições/índices exclusivos do SQL Server. A melhor solução é criar uma view com schemabinding e então colocar um índice exclusivo nessa coluna:
Create View dbo.MyUniqueColView
With SchemaBinding
As
Select MyColToBeUnique
From MyTable
Where MyColToBeUnique Is Not Null
GO
Create Unique Clustered Index IX_MyTable_MyColToBeUnique On MyUniqueColView ( MyColToBeUnique )