Rambam, Maase Hakorbanos 9:5, indicates that a toda is just another kind of sh'lamim. In perek 14 he mentions that a sh'lamim needs no special circumstances, as opposed to a chatas which can only be brought if one needs to bring one. That is, one can bring a toda whenever he wants.
(This is reflected in the little "y'hi ratzon" prayers we say during Ezehu m'koman: the chatas prayer says (paraphrasing) "if I must bring a chatas, this prayer should count as if I've brought one" whereas the toda prayer says (paraphrasing again) merely "this prayer should count as if I've brought one".)
Birkas hagomel is in lieu of the toda.
Yet birkas hagomel can, apparently, not be said whenever one wants. Shulchan Aruch and Mishna B'rura 219 carefully delineate under what circumstances one says it, and imply that under other circumstances one does not. (To be sure, there are circumstances about which the halacha is not clear, and, therefore, might indicate that someone "can" say the b'racha. But that's not comparable to the toda, which anyone can bring even without halachically accepted cause.)
So my first question is why. That is: If hagomel is based on the toda, why can the latter be brought whenever one wants and the former not?
My second question is whether anyone actually holds that hagomel can be said without halachically accepted cause.