God could not possibly have perfect knowledge. If he did it would interfer with his own free will because he would have to know everything that he would be thinking for eternity. This is an impossible task for even God.
Imagine this:
Far into our future we invent a computer so powerful that it is capable of perfectly predicting every event on earth 5 seconds into the future- from every human thought to the weather(it is called "earth prediction mode" when performing this operation). The only thing the computer wouldn't be able to have perfect prior knowledge of is the state of it's own future processes while in "earth prediction mode". This would require infinite memory. The computer would freeze, and even if it did have infinite memory, the prediction would take an infinite amount of time.
This is my best guess anyway. Any thoughts on this?