Caveat: I've spent a lot of time researching Norway for a trip that didn't happen this year, but I haven't been there yet.
I can't find an Ulsik in Norway, so I think the "Ulvik" in the text of your post is correct. That's a town (I assume very small, because I hadn't previously heard of it) deep in the Hardangerfjord. Can an ocean-going cruise ship get there, or will you be put on a smaller ship or a bus?
Maloy is new to me, too, but I guess it's the place on an island that's a bit closer to Alesund than to Bergen.
My assumption is that the Maloy/Ulvik option focuses on scenery. Alesund and Bergen are known as interesting/beautiful towns, though the coastal scenery between them will be lovely. I assume what you see along the coast on the way to Ulvik will be part of what you see traveling between Bergen and Alesund. I think a major decision factor is what you think you'll be most interested in by the time the cruise gets to Norway.
I'm very much an urban-architecture fan, so I'd choose the cities. Many others would opt for Maloy/Ulvik, I'm sure. I hope we have someone on the forum who can comment on the Hardangerfjord. It will be helpful, I think, if you can tell us whether you'd be getting there by ship or by bus. There have been some interesting comments in earlier threads about scenery-viewing preferences. Some find the view of fjords from above (such as you would get from a bus) more interesting than the view from the water. I suspect I'd feel that way after a few hours on the water, and Ulvik is deep, deep in the Hardangerfjord. On the other hand, the most picturesque fjord views are in the narrow parts of fjords, and I believe Ulvik (if by ship) will give you that experience. Just skimming along the coast will mostly expose you to the (wide) mouths of fjords.
I haven't been to Iceland, either, so I have no clue as to whether the Icelandic fjords you will already have seen are more or less specatcular than those in Norway.