I did very large headers with h2pas. The trick is that most people expect to run it through blindly, which will not work. No header convertor will ever btw. So just going around shopping for the next header converter won't work. There are fundamental problems.
So you need to adapt how you work
I usually use some simple pascal filter programs to split the header up according to type (constants, types, function declaration, macros etc), and then run the header on the individual bits.
Having homogenous input (all structs etc) makes running some substitutions in your prefered editor (*) before and after h2pas easier and safer.
One standard case to lookout for are calling convention macros. Better kill those, run h2pas (play with parameters!), and then bring them back with a global substitute. n the editor.
Most headers in the winunits-base/ package were converted this way.
(*) I usually use "joe".