H323 works the way you expect because CM analyzes every digit. Once you dial something that can have no further specific match, it stops.
So, if you had 1900, min/max 11 as DENY in ARS and 1 min max 11 as allow, you would allow calls to any 11 digit number starting with a 1 unless it starts with 1900.
If you dialed the ARS code - 9 for example - from a H323 phone and then 1900, CM would stop you right there. It knows there is no further possible thing you could dial that would be legal.
PPM dial plans show you only what you CAN dial, not what you CAN NOT. So, having those 2 entries would get you PPM like
9Z1xxxxxxxxxx
PPM has no concept of "illegal" numbers - so there's no FORBID-9Z1900
And it's not going to make more complicated PPM to express the impossibility of dialing 1900 like this:
9Z11xxxxxxxxxx
9Z12xxxxxxxxxx
9Z13xxxxxxxxxx
9Z14xxxxxxxxxx
9Z15xxxxxxxxxx
9Z16xxxxxxxxxx
9Z17xxxxxxxxxx
9Z18xxxxxxxxxx
9Z1901xxxxxxxxx
9Z1902xxxxxxxxx
9Z1903xxxxxxxxx
9Z1904xxxxxxxxx
9Z1905xxxxxxxxx
9Z1906xxxxxxxxx
9Z1907xxxxxxxxx
9Z1908xxxxxxxxx
9Z1909xxxxxxxxx
But, if you actually had those entries in your ARS, then you would actually see PPM of that nature so your phone would stop after dialing 91900 just like a H323
Looking at your dialplan analysis - anything starting with 2 has to be 3 digits, it's an extension and can't go anywhere else.
p198 says you need to enable AAR/ARS dialing without FAC to use strings in the dialplan analysis table of type aar
We usually don't use AAR in the dialplan analysis table - at least on all the systems I've seen. You'd typically use UDP or EXT and in change dialplan parameters you can set CM to look at strings as being in EXT before UDP or UDP before EXT
So, if you had 7, length 3, go to UDP and in change uni 0 you made string 7 length 3 go to AAR, you'd probably not have PPM 7xx+
Remember to initialize sync from SMGR - not incremental - anytime you change anything in dialplan analysis. That takes a whole new database sync to build PPM again.