Actually the last battles of the roman empire hadn't many romans in it, in most of them after the 400 you would see 2 barbarian armies fighting each other. There are many reason for this decline of the (western) roman army, i will try to name some of them.
1) Trade bring a lot of wealth, but also a lot of nasty diseases. In imperial era sickness not know in europe begin the spread, like Measles, Smallpox and various plagues. Also some of the roman ways wasn't really healty, a lot of them had lead poisoning for example, in late roman empire there was an huge fertility decrease and probably a population decrease in the western half
2) Of course really bad emperors and civil wars didn't help
3)The roman society was largely demilitarized, protected by a small professional army. War weapons were forbidden and built only on strictly controlled factories, while a roman soldier was considered (barely) able to fight after 2 years of expensive training.
All this when every guy from 14 years to 60 outside the empire was able to fight and had some kind of weapon at disposal.
So when the small professional armies was wiped, there was no defence.
4) Barbarians in the late empire era knew the roman army and their tactics. A lot of them served in the roman army, also the german and scandinavian technology, wealth and population greatly increased after the 200 AC.
5) In the republican era and early empire, romans and non romans really wanted to become soldiers.
A roman soldier had actually a much more life expectancy and quality of life compared to a civilian, since he had a really good medical care, probably unmatched until 19 century, a really good diet, while casualities in battles were often low. Roman soldiers were really expensive to train, so they took care they didn't die too much.
For the rest of the plebeians there were absolutely no jobs (slaves did everything) the luckiest had some land where they could do some subsistence agricolture, while the others lived in total misery.
When the empire stopped to grow, there were less slaves, and also there was some laws that tried to make the freemans works.
Life conditions greatly increased with the increase of trade and greater avaiability of different kind of food, jobs, and all the roman infrastructure (baths,thermae, aqueducts, roads). Also since the legions fought defensively, no looting anymore = no chances of getting rich.
As a result, nobody wanted to do the soldier.
The soldier work became hereditary, but there are many stories of self inflicted mutilations and desertion, so they could avoid spending all their lives in some fort in the middle of nowhere under really harsh work and discipline (often soldiers were used as free labourers for building roads towns etc).
The problem was initially solved by hiring outsiders, there were always non romans in roman armies, but their presence steadily increased. When they were trained as romans, under roman officials and divided (tribe mates not togheter) they performed as well as roman citizens.
But after Hadrianople, the Legion's prestige was damaged and the outsiders didn't want to serve in a losers army.
Need made the emperors hire entire tribes, under barbarian leaders and with barbarian equipment/tactics, so legions effectivness greatly decreased.
6) Splitting the empire sounded a cool idea, since it was really hard to control all that land. In pratice was a disaster. The western half of the empire was always pisspoor compared to the eastern half.
Eastern empire had more population, a lot more trade, more culture. While the empire was united a lot of the eastern revenues went to the western part of the empire, the western empire depended on the east even for the food, they got a lot of it from egypt and black sea shores.
When the empire splitted, no more subsidies from the east, and the west started to decline. In the last years of the western half, the east often bribed the barbarians to go to the west and leave them alone actually.