Turus Mara advertises 1 1/2 hours ashore on Staffa, but you'd need to get to the Ulva ferry slip to take their boat. A car would be a necessity to get to the ferry slip.
I don't know if it's done, but you could go out on the morning cruise with Staffa Tours, either from Fionnphort or Iona, then stay on Staffa until the afternoon tour comes back. There would be several drawbacks to that option: You'd have to pay double, as the boat company would be giving up a seat on the return trip; there is no shelter on Staffa, unless you can take shelter in the cave (you'd be there for four hours); there are no toilet facilities on Staffa; and if the weather turns bad, and the boat can't return, you'd be stuck there overnight.
Check out the Turus Mara website for more information on their tours. They also have tours to Inch Kenneth, where you can visit the ruins of a 12th century chapel.
Best wishes for your travels!
Update: It's actually Mull Charters who do the boat trip to Inch Kenneth, with two hours ashore. The history of the island is fascinating, especially the story of the Mitford family.
p.s.: Has anyone else noted that almost all of these tours are three hours in duration? I hope that none of these boats are named the S. S. Minnow.