Asterisk Behind NAT without using DMZ or Port forwarding

Q1 Port forwarding is by far the easiest way of doing this; why do you want to make life difficult?

Q2: Asterisk does support STUN. I’ve never used it, so I can’t say how complete the implementation is.