Okay, so I experimented a little. Turns out the problem for me occurs when I try to PID Fade shortly after getting her (she talked to me only once at this point, right after getting out from the Thieves Guild). After I PID her, she's stuck in a initiating dialogue loop. I checked the variables for her and I noticed, that:
1) before I PID her, the E3EFRIENDTALK variable shows "1"
2) after the dialogue loop starts (I managed to auto-save moving between areas, yay), the E3EFRIENDTALK variable shows "9" for some reason
@jastey, based on this, are you able to propose a solution? I know how to edit code in NI
UPDATE: I manually changed the value to "2", which triggered her friendship talk. I progressed a bit, but now it seems that each time she wants to say something to me, the variable changes itself to "9" and she is stuck in the loop again.
UPDATE 2: Found the issue. Timer's broken somewhat, at least in my installation. The E3FADEFRIEND timer, I mean: for me, it constantly shows "22076599". Then the script treat it as expired and increment the E3FRIENDTALK up to "9", and since expired timer also controls Fade starting the dialogue, she keeps trying to talk. I tried to manually set the timer to lower values, but it seems that the script counts it as expired no matter what.