Wwan dhcp always get a subnet why?

The fake subnet is necessary for DHCP. You cannot assign a default route in DHCP(v4) without pointing to a gateway address. And the gateway address must be directly reachable on L2, so you need the gateway and assigned address to be in the same subnet. All this is completely virtual of course, which can be a bit confusing. Except for your adress, the remaining parts of the subnet are probably part of the address pool on the PGW/GGSN. And these addresses, including your "gateway" might be assigned to other users.

But if you drop DHCP, then you certainly can run qmi with just a single address and no network route. Look up the network assigned adress and do something like
ifconfig wwan0 address/32
ifconfig wwan0 -arp
ip route add default dev wwan0

(none of this is an issue for PPP, since IPv4 address assignment is part of IPCP)