Yes. The SPServices calls use jQuery.ajax underneath the covers, do they not? You can simply return the jqXHR object rather than discarding it (which is what happens currently). My understanding is that that object can be used with the Deferred functionality.
So every call do $().SPServices would return that underlying jqXHR object, allowing you to do something like
:
$().SPServices({ operation: "GetListItems", async: true, listName: myListId }).done(function() { alert("I'm done!"); });
as well as the more complex stuff you can do with Deferred.