Earlier quoted context omitted.
It's not just a money issue. It would be impractical and unethical to confine study subjects in controlled environments for long periods of time. That's what we would have to do in order to gather reliable data and eliminate confounding factors. Most human nutrition studies are only observational and barely a step above junk science. Don't take them too seriously.
Randomized control trials are done all the time. They can and are done ethically. I don't know where you people are getting the idea that RCTs are unethical.
So as a practical matter most studies tend to rely on subject reported data, which is notoriously inaccurate. People forget to record little snacks, or don't weigh their portions, or lie about their behavior because they're ashamed.