I think the ports they use are tied to the client, not the protocol itself. The FAQ in every client I've ever used tells you what ports to open, so try that.
IIRC, yellow can also mean there's a problem with the tracker. My router forwards the correct ports (I use Azureus too), but sometimes torrents are yellow for a little while.
There isn't a whole lot you can do to improve speed; BT's speed is based totally on the speed of your seeds. I was downloading something at 500K/s yesterday morning, but was getting something else last night at 4K.