A mon sens, si, dans faire + infinitif, fait est invariable, il n'y a là aucune exception. Pour reprendre les exemples de Krokodilo : dans « elle s'est fait maigrir », s' n'est pas COD de faire mais de maigrir (elle n'a pas fait elle-même, elle a fait maigrir elle-même) ; dans « la maison qu'elle a fait repeindre », maison n'est pas COD de faire mais de repeindre (elle n'a pas fait la maison, elle a fait repeindre la maison). Dans les deux cas, la règle générale dit qu'il n'y a pas d'accord. Et, si l'on y regarde bien, c'est la même chose dans tous les cas où l'on trouve fait + infinitif.
Quant à laisser (comme voir ou entendre, entre autres), c'est à peine plus compliqué. Si le sujet fait l'action introduite par laisser, voir ou entendre, il y a accord. S'il la subit, il n'y a pas d'accord.
— Elle s'est laissée mourir (elle a laissé elle-même mourir), mais Elle s'est laissé tuer (elle a laissé elle-même être tuée, elle a laissé quelqu'un la tuer).
— Ils se sont vus triompher (ils ont vu eux-mêmes triompher), mais Ils se sont vu condamner (ils ont vu eux-mêmes être condamnés, ils ont vu qu'on les condamnait).
— Les gens que j'ai entendus chanter (j'ai entendu les gens chanter), mais Les airs que j'ai entendu chanter (j'ai entendu les airs être chantés, j'ai entendu que l'on chantait les airs).
Dans ces exemples aussi — où, comme dit, entre autres, Adolphe V. Thomas, être est mis pour avoir —, il s'agit de l'application de la règle de base du COD placé devant le PP ou non.
Mais je crois me souvenir que tout cela a été déjà abordé sur ce forum.
P.S. : Cher Krokodilo, je crois que ceux qui ne pensent pas à entretenir ou approfondir leur connaissance du français se contrefichent de ce dont nous disputons ici et écrivent indifféremment fait avoir ou faite avoir, laissés tuer ou laissé tuer, et tutti quanti.