나 이미 먹었다. 먹었어 is better in spoken Korean, ~다 is rather for written one.
Anyway they mean the same as 먹었는 걸, just ~ 걸 has when speakers express it's different to what questioners have expected
점심 먹을래? 이미 먹었는 걸
With ~ 는 걸 has the meaning
However if you say ~을 걸 the use is when speakers guess something is already happened or expecting what will happen
주영이는 이미 밥 먹었을 걸>>Maybe 주영 already had a meal
이번 월드컵에서는 대한민국이 우승할 걸>> Probably in this worldcup Korea national team will win
with ~걸 showing sort of exclemation, wondering for emphasising the action