According to "Battles And leaders of the Civil War: Vol.4", page 767, the number of southerners serving in the Union Army was more than 'nonexistent'. There were 2576 from Alabama, almost 8300 from Arkansas, almost 6,000 from Louisiana, 2000 from Texas. And that does not count the more than 150,000 men from Kentucky and Missouri, two ostensibly confederate states. And these are not all black soldiers, either. A considerable number were white troops. Here is a Link to a site that details all the Union regiments during the war, including those from southern states.
"The overwhelming majority of southerners ... fought because Lincoln's army was on their doorsteps shooting at them, and when you get shot the obvious thing to do is shoot back!"
The overwhelming majority of southerners, even excluding free and enslaved blacks, did not fight at all.
To the extent that those in the south who did take up arms, largely took them up in the southern cause, is accepted fact.
I would add to the list the border slave state of Maryland (and possibly Delaware too), which provided a large number of troops to both sides. And, though there are some who would deny it, a substantial number of aboriginal Americans fought "for the Union" (recognizing that inter-tribal rivalries may have been a more significant factor in their alliances).
Outside of Eastern Tennessee and the Wheeling region of Virginia (which wasn't really southern to begin with - it's north of the mason dixon line) the number of union troops from the south is virtually non-existant. Save for those two states, they numbered a couple thousand on average and in some cases a couple dozen. South Carolina sent zero recorded union troops for example. Mississippi sent 500, Georgia is unknown but estimated at less than a hundred, and the rest sent a couple thousand each.
So after all your whining you still got only a couple thousand, or in some cases a couple dozen, northern troops per southern state save the two anomolies I mentioned.