Rather than trying to split a sentence directly into words, it's often more instructive to break it down into phrases, each of which breaks down further. This lets us see the overall structure better.
For example, consider something like "tenth birthday card". Tenth is an adjective, and birthday and card are both nouns; but the phrase can mean either "card for someone's tenth birthday" (with tenth modifying birthday, and tenth birthday modifying card) or "tenth card for someone's birthday" (with birthday modifying card, and tenth modifying birthday card). If we focus too narrowly on individual words, we won't see this ambiguity.
One useful tool is a parse tree, which lets us visualize the structure. For example, we might parse your sentence something like this:
![[example parse tree]](https://i.stack.imgur.com/AwzFX.png)
As you can see, the object of for is actually more than ten years (not just more than); and I've classified the numeral ten as a quantifier (following the terminology of the Cambridge Grammar of the English Language), though you could also call it a determiner, specifier, determinative, adjective, or even noun.
(Note: even setting aside terminology, the structure shown in the above parse tree is not the only possible analysis. A lot of the details are debatable, there are different schools of thought, etc.; but it should give you a sense of how to think about syntax.)