@Ticce
Let me try again, as for some reason, I missed addressing the sentence at the top of the OP:
We have thought for a while that they were dating.
The way it is written implies you don’t think they were dating at all because for a while applies to We have thought [for a while]... (Clause 1.) not to …they were dating.(Clause 2.) which is ambiguous and vague for lack of detail and context.
Do you find the sentence to be correct?
No, it is not because have thought implies that the action of thinking is or could still be going on, but it should not have for a while as a time marker because it is contradictory. …for a while has a beginning and end.
I think it should be We thought for a while that they were dating because We thought… is a past action that started and ended, and for a while meaning a specific period of time that had a start and an end, from that point of view, they match better. But again, clause 2 is very vague it needs more detail to actually be clear and make sense.
Do you agree with my interpretation?
I do not agree with #1 for the reasons stated above.
I do not agree with #2 either because were dating is vague and it lacks a time marker or any other clue to know if they were dating at all let alone for how long.