A lot of this is typical "terrible twos" as others have said below. I think, however, that this has eroded your confidence so much that you are letting your son call all the shots. As a result, you're shaking around him and feeling nervous - that's not sustainable!
He is looking for some structure because that brings security, so you want to offer him some control through choices that seem like a big deal to him but which are manageable for you.
First, stop putting him down so early if he's never falling asleep. I'd adjust his bedtime by 15 minutes every night or two until he's going to bed around his natural sleep time. I'd also get some room darkening drapes so he doesn't wake up with the sun, and maybe a white noise machine so he doesn't wake up with the birds (which are now up around 4:30).
Stop trying to force food - he didn't get this from his father, he's trying to have control over his little life. Don't give in to it. If he doesn't eat, fine. He will no starve. He will eat when he is hungry. But that doesn't mean you turn into a short order cook. You let him know that he doesn't have to eat, but the food is getting put away and the next chance to eat will be X (mid-day snack or lunch or whatever). Kids have to eat more than 3 times a day, but you don't have drop everything because he's hungry 15 minutes after you put the breakfast stuff away. He absolutely does not need a bottle - so keep that off the menu from now on.
Give him choices of 2 things:
"Do you want to sit on the floor or do you want to go to the park?...(Pause for answer). Okay, we'll go to the park another day."
"Do you want to sit on the floor or have breakfast while the food is out? (Pause for it to sink in). Okay, I'll put the food away and maybe you'll be hungry at lunch time."
"Do you want to wear the blue shirt or the red shirt?"
Do not give in to his whining - he'll give it up when it doesn't work. The lesson you want to teach him is that it's his choice to be hungry or to miss the park. "How unfortunate for you" is your motto. You can change it to "That's too bad for you, isn't it? You decided to sit on the floor instead of eating breakfast."
"That's too bad for you. I had time to go to the park before, but now it's laundry time." And so on. Same tone, matter-of-fact, no taunting with a "too bad!" inflection like a teenager would give you! Just simple and sort of business-like.
It's okay for a kid to sit alone until he comes out of his funk - when he's 2, when he's 7, when he's 16. Please, please stop trying to be responsible for his moods by making nice all the time. Just a casual, "Okay, if that's how you want to spend the time. Me? I'm going to do a puzzle/read a fun book/play with the dog."
If he's playing contentedly, you don't need to pick that time to play with him. If you need him to get a move on because it's time to go, try giving him a 5 minute warning (he can't tell time, but he can easily learn that when the timer goes off, it's time to go). Give him a choice if he balks: "Do you want to put on your play clothes or do you want to go to the store in your pajamas?" Then take him shopping in his pj's! It's not a problem. Of course, if he wants to play outside, well, he can't because he made the decision to not get dressed.
If he throws himself on the floor, that's a tantrum. You walk away from that and don't let him suck the life out of you. If he needs to get going, then you pick him up, undressed and unfed, and you put him in the car seat with a blanket over him. He doesn't have to walk if he won't - you pick him up. It's okay. Parenting is not a popularity contest. You'll show him, over time, that he has certain choices within certain parameters, but you're the parent and he isn't running the show either. Try to be consistent and use the same words every time. Not too many, but the same philosophy and attitude from you will give him the security and consistency. If you try to do things his way on Monday and then be demanding on Tuesday, he gets confused.
Do read the books recommended by JB, and get his father to agree with you on a parenting plan. Then stick to it and be consistent - no giving in to a kid who goes around Mom to get Dad to agree!
Above all, do not take this personally. He's not in charge of you and it's not up to you to cater to his moods. Just work around them.