Overall I'd say your application is pretty stong, and I'm confident you could get into a top 30 MSTP... I think Case Western, Emory, and UNC might be in your range. Your GPA is great, but your MCAT is a tad low for MD/PhD. I certainly wouldn't retake it unless you think you can improve to at least a 36, because it's certainly workable.
Definitely try to get at least a little bit of clinical volunteering. That was the 1 thing that was missing from my app, so I started volunteering in a hospital the week before I submitted AMCAS, and just kept going while doing secondaries, etc. This is not desirable, but it certainly shows you don't need tons of clinical volunteering to get into an MD/PhD program. I personally think the rest of your ECs look fine, theater and a little bit of non-clinical volunteering should be pretty good.
Your research looks fine, the longetivity thing could come up but as long as you're on friendly terms with both your PIs it shouldn't be an issue. I've worked in 3 different labs over the course of 2 years and no one really said anything about it to me. If they had I would've just explained I wanted to get some variety in my research experiences to make sure I like science, not just working in Dr. X's lab. The publication is definitely a nice addition, as it validates your work. How will your letters be from your PIs?
As of right now I think the only weak point that's not easily fixable (like clinical volunteering) is the MCAT... just apply broadly and I think you'll have no problem getting in somewhere.