Make sure that you are either weighing flour (1 cup 5oz.) or fluffing up the flour and lightly scooping into the cup then level off.
Scratch cakes are very temperamental and even a little bit of extra flour can throw it off.
One of the biggest improvements that I have found with scratch cakes is making sure that your butter and sugar are creamed well, and what I mean is beaten really well for at least 5 minutes It should be quite light and fluffy, stopping to scrape down the bowl along the way. This improves the texture so much.
Those are a couple of my tricks. Also baking until a toothpick comes out with a few moist crumbs, NOT completely clean, the cake is likely over baked by then.
I had issues with the basic 1-2-3-4 cake recipe, sometimes it would be great, sometimes like cornbread. After learning to cream properly and making sure the flour was right, it is a home run every time now.