Success events have to be passed on either a PV (s.t) or an Action (s.lt)... but they don't necessarily need to be on their own server call.
This will of course depend on how your site works....
For example, I work for a newspaper company, and we have a subscription wall... I track a "wall event" when the wall is shown on an article... however, I don't send it as it's own call... I add the event to the article's page view call....
so I have all my standard pagename, article title, author, category, etc... dimensions.. Then I have an event for when there is no wall (i.e. "real article views") and a different event for wall show (i.e. articles that are blocked from being read"), and then I have a standard custom event for article page (i.e. "article pages" regardless of the wall status)
But from what you are saying, you are trying to track Session Timeouts, Service Call errors, etc... I assume these all occur after the page view has already been sent... as in the user loads the page, does something, then encounters an error?
In this case you will have to send a separate s.tl call....
But don't think of these as "links"... yes, they are called links (that is based on old naming and more simple times)... but they are more like "actions"... so while you may not be able to reduce server calls... the s.tl is the correct way to track this... just make sure the "linkname" value is clear on what this is.. not a link, but a specific error.