I asked "sub" (developer of GB-PVR wich do not have haali problem) what he thinks about it, here is his answer:
GB-PVR isnt doing anything special to avoid this happening and doesnt have this problem.
To me it sounds like MP has a reference counting problem on its graph (ie, not called xxxxx->Release() on some component, which ends up still having a reference), causing directshow not to try destroying the graph, leaving Haali hanging around in memory. These sorts of things can be hard to track down, since it could be pretty much anywhere in the graph (for example, some interface on a subtitle filter). If I ever have these sorts of things happen, I usually have to start commenting stuff out to see when it starts working again, and then work from there to find the exact cause.
Unfortunately that won't still explain the fact that without the DXVA the graph is cleaned up properly. As far as I know there is no difference in MP side when DXVA is used and when not.