First change the DNS suffix of TESTDC1 so its FQDN is TESTDC1.TEST.com instead of TESTDC1.com.
1. Both stub zone and conditional forwarders shall work.
2. Check SOA of the DNS zone TEST.com. A little bit confusing is that in this part of question, you mention TESTDC domain, and earlier have called it TEST.com
3. Yes, a one way trust where TEST.com trusts EXTERNAl.com will make users from EXTERNAL domain to access resources in TEST domain.
4. Use forwarders tab in the DNS server prpoerties, and configure that 'All other domains' shall be forwarded to ISP's DNS server. When using conditional forwarding, you add each domain that shall be forwarded to other DNS servers than those used for 'all other domains'
5. Conditoinal forwarding will forward DNS queries for the specified domain to another DNS server, and creating a new zone will be hosted on the local DNS server to handle the queries on the local DNS server instead of forwarding to the remote DNS server.