Does this placement of 已經 alter the meaning? My professor teaches that duration of non action should come before the verb. For instance:

我三天沒來上課了。

On the other hand, native speakers have said both these sentences containing 已經 are correct：

我沒吃飯已經兩天了。
我已經兩天沒吃飯了。

Is there a difference of meaning between the last two? Or else why can 已經 render the rule my professor teaches nought? Or is the rule wrong?
EDIT: I asked the same question inside my weixin group - there sentence one was labelled 2 and vice versa! Opinions diverged greatly. Some of the longer comments are the following. Unfortunately, I don't understand them completely, because they are in Chinese:
Commentator A:
结果一样是三天无饭，但两句意思隐藏了无饭的选择关系有主动与被动，不知陆迪兄弟能否get 到.
Commentator B:
第一个含义我很饿。第二个含义我可能吃了其它食物或我还可以继续不吃饭。
EDIT 2:
Two native speakers claimed that one of them emphasised time, the other not eating. But they disagree as to which is which.
I think the rule is not correct. It should be fine to say


  我沒來上課三天了。


Comparing to 我三天沒來上課了。, the meaning is same but the former puts more emphasis on the duration, i.e. 三天.

Then about the last 2 sentences, 已经 doesn't change the meaning; it's used for emphasizing the duration further.