So what you want is to route dport 80 to the tunnel interface and everything else to the outgoing ethernet untunneled?
You can't do that with iptables, at least not by default. iptables can drop, permit, and alter or change packets. iptables doesn't normally make routing decisions. In fact, by the time a packet is being evaluated by the FORWARD table, the routing decision has already been made. That's why you can use the outgoing interface as a parameter; it's already been determined.
The rules you have posted here just drops anything not on port 80 and on the tunnel. It might even drop the tunnel, but I think that'd be handled by OUTPUT instead.
Policy based routing is well beyond my expertise, and even some quick googling turns up multiple ways to implement it. Roughly speaking though, if this is the way you want it to work, you're always going to be adding rules to the PREROUTING table. Here's a doc that describes a patch to iptables so it adds a target to alter routes directly. Here's a section of an advanced routing document that uses iptables to tag packets and sets up the routing table to operate via the tags. There's more still (google "policy based routing using iptables"), and I have unfortunately no idea how much of this is workable with DD-WRT. Hopefully this can give you a beginning of help to scale the rabbit hole.