But beefthief he has told her he does want kids and does want to be married. If he doesn't, and he's just stringing her along, which is what it sounds like, then he's being very dishonest with her, possibly with himself too, but you can't blame her for thinking they wanted the same things when that's what he's said!
I agree with PPs who say he just doesn't want the commitment/change/upheaval/cost and fancies these things in some theoretical, someday/never kind of way but isn't prepared to really face up to what that means for her. It's very difficult, because he can always pass it off as never quite getting round to it and continue to appear to be a reasonable person, BUT it shows a basic lack of respect for her feelings and needs that she has stated clearly.
If he wasn't ever going to give her marriage and kids, he should have ended it but I suspect he's just bumbling along in his cushy life and batting her off with vague promises. It's selfish, heartless and cruel but because he doesn't have to be actively cruel to do it, it's hard for OP to accuse him. The only thing she can do is force a change and face up to the fact that that may mean leaving him.
What matters is to do this while she still has a chance of what she wants.
I know a man who has done this to multiple partners and then just moved onto the next, younger one when the woman got to her late 30s and left. He's generally a nice bloke, if you met him you'd think he was lovely. But he just doesn't take this seriously and only thinks of himself.
My own ex didn't really want to have the kids he insisted he wanted. He tried to claim we could both put it off until we were 40ish. But when I asked if he really wanted them he would seem so sure he did - just "one day". I did the ultimatum thing and we ended up having 2 DC, but you know what - he still basically didn't really care about my feelings and needs, so it was a real struggle. I'd basically cajoled him into it – and while I couldn't possibly wish away my wonderful DC, that does make me sad.