They may have had the generals, but they didn't have the men. The free population of the Confederacy was less than a third that of the Union. Even if you include the enslaved population for economic purposes, they were still outnumbered by a considerable amount. Having a smaller population makes it much more difficult to replace losses - whether they're killed, wounded or simply gone AWOL to get the harvest in, those men are gone, and they must be replaced. This became a bigger and bigger problem as time went on.
The other big problem the Confederate states had was economic. Their wealth was bound up incredibly tightly with agriculture (one of the reasons they fought so hard to keep slavery was so that they'd have labour in the fields) and there was relatively little manufacturing or mining going on in comparison to the Union states. An army has to be outfitted - they need weapons and ammunition, they need uniforms, they need boots - and much of this outfitting involved industries that the Confederate states had never invested very much in. Union troops were showing up with rifled weapons like the 1861 Springfield, Confederate troops with much older smoothbore muskets off the mantelpiece at home...and even if they DID capture the more advanced guns, they didn't have the means to produce ammunition for them in any great quantity.
To make matters worse, the primary cash crop of the Confederacy wasn't even a food crop, something they could have lived on even if there was no market to sell it. Their primary crop was cotton, which had to be exported overseas before it could gain much value. They exported raw cotton, and imported all the other things they couldn't make.
When the war began, one of the first things the Union did was enforce a blockade of Confederate ports. No way to export (and thus make money off) their primary crop. No way to import all of the many, many other things they needed - the blockade meant no finished cloth for uniforms, no iron and steel for weapons and railway stock that could move men or materiel around, no coal, no medicines. No food, since the Southern agricultural machine had concentrated on cotton more than food crops, and until war broke out had always been able to buy whatever they weren't producing. Food shortages get even worse when there's a war being fought directly on your territory and your crops are being trampled or torched.
Can you see the problem now?
The -only- place where they won most of the battles or had the better generals was the Virginian front: the union was winning battles all the way through the war in the west from Shiloh to Vicksburg to Chattanooga to Atlanta.
The west was where the war was largely won: by 1864 Sherman was in Georgia, and yet the in the east the Army of the Potomac was still fighting same vicinity it was fighting since 1861 in what amounted to a 3 year strategic stalemate. But victories in the west had cut the Confederacy in half and allowed the invasion of the southern economic heartland by federal troops: thus achieving the strategic breakthroughs never achieved by either side in the east until very late in the war.