Well, we have a reputation for overeating, so I don't know if it's that we eat very little.
Your second observation may be closer to the truth. Many people (not just Americans), don't really want to try new things, or unfamiliar things. Also, I know that Americans as a whole have a reputation for being unceremoniously direct, but even that isn't entirely true, and can vary by region. People from the East Coast have a reputation for saying exactly what they think, while people from the South and Midwest have more of a reputation for being polite, sometimes infuriatingly so, because it can often times be difficult to tell what we're actually thinking. I can speak for myself and say that if I came to your house, I'd eat what you made me and tell you it was very good, and thank you for it, even if I didn't really like it, that's just being polite where I'm from. If you made me something that I really, absolutely could not eat, I'd have to feign some upset stomach or blame it on jet lag or something along those lines.
For some folks, the absolute worst thing is to make the host feel bad, so if they have to eat something they don't like and smile about it, or even tell a little lie about not feeling well, it's still not as bad as saying, "I don't care for this."
The weird thing is, if the roles were reversed, I'd want you tell me, so I could make you something more to your liking. Weird, huh?