I was just re-reading a paper (Gregory, 2008) that discusses the meanings of these terms, & thought I'd share it with you. As I'm sure you're aware, they're words that have quite specific meanings in science, and meanings that generally differ from everyday usage - 'theory' and 'hypothesis' are distinctly different terms, for example. Here's what Ryan Gregory has to say about them.
Let's start with fact: in science, a fact is 'an observation that has been repeatedly confirmed, and for all practical purposes, is accepted as 'true' ' (National Academy of Science, 1998, cited by Gregory, 2008). It's important to realise, however, that truth in science is never final, and what is accepted as a fact today may be modified or even discarded tomorrow (citation as before). 'Science' isn't set in stone, and because we're continually collecting new data, in principle it's always possible that any given scientific fact may be revised or rejected. This can be a tricky point to grasp. And it's why scientists will never say that they're 100% certain of something.
In everyday life, people tend to use the word theory in the sense of a guess or a speculation. You've heard this before: the meaning of theory in science is quite different: 'a well-substantiated explanation of some aspect of the natural world that can incorporate facts, laws, inferences, and tested hypotheses' (citation as before). Gregory goes on to say that [s]cience not only generates facts but seeks to explain them, and the interlocking and well-supported explanations for those facts are known as theories. Theories allow aspects of the natural world not only to be described, but to be understood. Far from being unsubstantiated speculations, theories are the ultimate goal of science (Gregory, 2008). Thus, evolution is both a fact and a theory.
What's more, theories are continually being tested, which is where hypotheses come into play. Quoting the NAS again, Gregory notes that in science an hypothesis is 'a tentative statement about the natural world leading to deductions that can be tested,' either by experimentation or by prediction and observation (commonly used in geology and astronomy, for example). Verified deductions strengthen the hypothesis, while incorrect deductions lead to rejection or modification of the hypothesis. Or, as Gregory says, theories explain facts and are tested by generating hypotheses. No matter how much information accrues, hypotheses never become theories, and theories never graduate into laws.
(And those scientific laws? They're descriptions, 'generalisation[s] about how some aspect of the natural world behaves under stated circumstances' (citation as before). In other words, they describe and predict what will occur under a particular set of clearly defined conditions.)
T.R.Gregory (2008) Evolution as fact, theory and path. Evolution Education & Outreach 1: 46-52