Hey E.,
I'm no expert, but my advice would be choices, choices, choices. I have a 3 year old boy right now (who's going on 4 soon and still only weighs 30 lbs!) and I honestly think that right now, its a power struggle. He wants to see how much he can get away with when it comes to you and him. When my son started doing this, I started offering for more choices. For example, today i asked my son "what do you want for breakfast" - his answer: "nothing". This is always his answer. Then I go down the list of stuff i know he likes, "do you want toast?" "no", "froot loops" "no", and i keep going until he finally says yes.
Now, of course, there are times when he'll say "no" to everything. In which case I'll just pick something and say, "okay, i'm gonna make you toast then". and i make a big deal out of it. and eventually, he'll say, "no, don't want toast, wan't eggs", or something like that.
its the same with every freakin' meal and snack - except of course, if its a fruit or junk food (which he loves both of, and would probably only eat if it were up to him, lol)
Okay, so I made this really long. My advice to you would be #1) Don't worry about his health or his weight yet. I'm sure he's fine. If you want, give him a multi-vitamin everyday to keep up the good stuff. And #2) Make him think he's going to win the power struggle by allowing him to choose what he wants.
Oh, and when in doubt - give him a reward. Sometimes I get my son to eat all his dinner by saying that at the end of it, he'll get a snack, or a bath. If its something they really love, you'd be surprised at how fast they eat! Good Luck!!!