Hi A.,
This all sounds very familiar, and I don't think you need to be too worried.
Behavior - My oldest turned two in June, and I felt the same as you - it's like a switch flipped on his brithday and he was a completely different (defiant) little person. It's normal. Hence the term "terrible two's."
Diet - My 2yo has never been a good eater, so you and I have different experiences there. We used to really have to fight with him to get him to consume just about anything besides milk (which he always loved). Our pediatrician always told us not to worry too much as long as he mainained his weight and stayed on the same track on the growth chart. We had to sneak vanilla pediasure in with his milk just to ensure he was getting enough nutrients. It's scary as a parent, but...
A few things to ease your worries...
One, I was always told a child will not starve himself. They will eat if they are hungry. They know when they are full and will stop if they are no longer hungry. So, if he is not eating maybe he really isn't hungry. The other thing to keep in mind is that toddlers grow at a much slower rate than babies. For that reason, it is common for toddlers appetites to decrease dramatically. Basically, they aren't as hungry and don't need as many calories because they are not growing as much. Makes sense.
One thing I have noticed with my 2yo is that sometimes, if he is constipated, he will not eat as much. So, maybe your little guy is plugged up for some reason, and he's uncomfortable. That could be why he doesn't want to eat. Just something to keep in mind.
Another thing I noticed is that the more we pushed our son to eat, the more he resisted. Seriously. It became really obvious because my in-laws would just constantly be pushing the issue, as they were worried and wanted him to eat more. And he always refused. Then, my parents wouldn't push it and he always ate like a champ when they were around. Now that your son is two, he is really testing and defying. It might help him to eat more if you push it a little less. Also, try to have snacks around and maybe he'll much and get some calories that way, instead of all the focus at mealtime.
Also, I noticed my 2yo would eat better if the rest of us were eating the same thing as him. If he was having cereal for breakfast, I'd have cereal, too. If he had pasta for lunch, so would I. I'm not sure if that made a difference or if it was coincidental, but when I started eating what he was eating his appetite seemed to improve.
I hope at least somthing I've written is helpful. I've spent a lot of time evaluating this issue with my little guy, so I have several thoughts and theories... :)
Good luck. :)