I want to share a dialogue that I had with a colleague and friend some years ago. I've slightly altered part of my response because I believe a reformulated answer makes more sense.
My interlocutor believes that God must fully (exhaustively?) know the future or else, God is less than omniscient. I obviously disagree; so my comments below are designed to address this particular objection. It is my belief that there are at least some things about the future that God knows contingently. Comments are appreciated.
In brief, knowing a proposition contingently (future or otherwise) is not the same thing as saying that one does not know a certain proposition at all. If God contingently knows that Abraham will offer up Isaac, how can it be said (legitimately) that He has no knowledge of the fact that Abraham will offer up Isaac?
(1) Whether Abraham will offer up Isaac or not is contingent.
(1) Necessarily, a contingent event can only be known contingently.
(2) Therefore, necessarily, God contingently knows that Abraham will offer up Isaac.
How is it possible for a contingent future event or proposition to be known in any other way except contingently? It is by its very nature contingent.
In answer to your second question about omniscience, I point to the old atheological question, "Can God make a rock so big that He can't lift it?" One problem with this query is the definition of omnipotence that it assumes. My point is that there is a similar problem that has plagued the traditional definition of "omniscience." As S.T. Davis says, divine omniscience does not mean that "God knows all facts." Rather, IMO, it refers to God's (exhaustive) knowledge of all epistemic possibilia.