Parece que você está chamando sp_executesql com uma instrução VARCHAR, quando precisa ser NVARCHAR.
por exemplo. Isso dará o erro porque @SQL precisa ser NVARCHAR
DECLARE @SQL VARCHAR(100)
SET @SQL = 'SELECT TOP 1 * FROM sys.tables'
EXECUTE sp_executesql @SQL
Então:
DECLARE @SQL NVARCHAR(100)
SET @SQL = 'SELECT TOP 1 * FROM sys.tables'
EXECUTE sp_executesql @SQL