El mensaje es debido a la expresión dentro el Count que devuelve nulos en caso que el Producto es distinto de A o B.
Para que estes más tranquilo
utilize la siguiente:
Código SQL:
Ver originalWITH T AS
(SELECT *,
SUM(CASE WHEN Producto IN ('A','B') THEN 1 ELSE 0 END) OVER(Partition BY Cliente) N
FROM MiTabla)
DELETE
FROM T
WHERE N=2
AND Producto='B';