It's kind of confusing, as to what you're trying to do here. It sounds like you want different subdomains to be port forwarded to different internal IP addresses, or maybe just to different ports. The thing is, subdomains, like any domain, is just resolved to an IP address. NAT knows nothing about domains, so you need to be able to do NAT based on IP and port alone. This means that each sub-domain has to resolve to a different IP address, or you have to require that each sub-domain be accessed with a different port (which is not transparent to the user).
It might best be handled by having every sub-domain use the same IP, and assuming this is HTTP traffic, let the web server sort it out using host headers.
Split DNS and NAT reflection refer to methods of accessing domains that are accessible from outside with NAT, from behind the NAT, so this further confuses me. Some clarification on what you want to do would be helpful.