(((hugs))) This all sounds really hard. One thing I'm wondering about is maybe some sensory issues? Or as pp said, a sensitive gag reflex? My nephew was much like you describe, and was diagnosed with oral sensory issues. An evaluation could be as easy as asking your ped. In NY, the therapists come right to your home...it is called the Early Intervention Program and it is great. They will watch him eat, drink, they will play with him, observe how he swallows, sucks, chews, etc. They can tell alot about what may be going on.
I too would implore you not to force-feed. Truly, it is counter-productive, could cause further negative associations with food/eating, and may erode trust. I know, I know it's hard, but I PROMISE he won't starve himself. Cont inue to offer him what you KNOW he will eat, (the baby food) along with one thing you think he *might* eat. Look at the textures of the things he will eat and try to mimic them. If he will eat Cheerios, throw in a few Kix. A few. Kids will need to see something a few times. You eat one so he knows it is crunchy. Just pop one in your mouth, crunch it, say yum, and toss a few into his dish with his cheerios and leave him to it. He may not touch them at first, but keep at it.
With the spaghetti at night...try this: Take 1/3 of the jar of food, spoon it into a strainer and rinse it. This will wash away the puree portion, but the solids will be left behind. Put those solids back into the jar and stir it up. What you have done is change the texture slightly, but the flavor and color and taste is the same. See what he does. OR, take a stage 3 version of the same food, put a spoonful into the stage 2 and try that.
I think getting him an evaluation is key. Nothing will work if he does have oral motor issues or sensory issues. Do ask your doc about this. And in the meantime, keep offering...that really is all you can do for now. Please don't force it, I know it is so hard, but the ramifications of force-feeding can be worse than him not eating...kwim?