Use the second one. Keep your URLs as short and simple as possible. Drop the
www for the sub-domains. That
home.html isn't even necessary. Just let the server-default index.php/html behavior take the place.
It's hard to provide too much reasoning as to why because I'm not sure what you're even trying to do.
fishing.example.com is already a sub-site, presumably about fishing. Slapping a second-level sub-domain on there serves no apparent purpose, is pretty uncommon so will look weird/suspicious to users, introduces more opportunity for typos, and so on.
If you're doing this for SEO purposes, I'd put it in the "trying too hard" category. Just put the "portal" in your page titles, eg. "The ExampleCom Fishing Portal" or something, rather than create weird keyword-stuffed URLs.
You mentioned Opera's portal as a reference point, but it's important to note they only go one deep. The portal sub-domain is equivalent to your topics, eg. fishing and goes at the top level. They do have other subject/portal sites like you intend, like for developers and Unite but they are also top-level, not something like http://portal.dev.opera.com