According to the freeradius document https://freeradius.org/radiusd/man/rlm_pap.txt I can use NT-Password as the type of storing user's password. However, I have only found the type of generating raw MD4 as NTLM Hash. As I need to use MSCHAPv2, I cannot switch to the more secure SSHA2-Password. Are there any other types of NTLM Hash more secure than raw MD4?
No, the protocol is specifically defined to use MD4. (It's called "NT hash" because it is in fact the exact same hash format that was used by Windows NT to store user passwords – and MS-CHAP was designed to be able to re-use the system's account database.)
CHAP uses the hash as an input to some other function – in MS-CHAP it acts as a key for DES encryption – so both sides must agree on the algorithm and salt being used in order to produce the same challenge response. Since MS-CHAP does not have any negotiation built in (neither for selecting the algorithm, nor informing the client of the salt), the only option is MD4 as written in the spec.
If that's not acceptable, consider:
a) making FreeRADIUS use a separate randomly-generated "Wi-Fi password" that has no relationship with the user's main password,
b) using PAP over EAP-TTLS (and/or EAP-GTC over PEAP, which is mostly the same thing), which sends the raw password to the RADIUS server and therefore any hash can be used.