Is the firewall you posted running on the server? If so, I don't see any wrong with it. Is it possible a firewall on your client machine is causing this? Or the SMTP server doesn't like telnet?
If none of this leads you to the problem, there are some things you can do to troubleshoot.
One useful thing is to look at packet counts for rules using (as root):
The first column will show how many packets have matched that rule. You can take this one step further by adding a rule to log rejected packets immediately prior to the REJECT rule.
You can also run a packet sniffer such as
tcpdump or
wireshark to see what packets are actually getting sent. If you run a packet sniffer remotely over ssh, make sure you specifiy "not tcp port 22".