I had preciesly the same problem until i solved it today. I dropped my htc one m7 on the ground at the front camera side so at the edge was a bit cracked so the dust could easily get in. (The crack wasnt that visible at all)
so eventually my front camera is kinda giving me a cloudy pic effect...