I am replying to this because I am a sprint customer care representative, and have some experience with this sort of thing. It sounds like the issue with your phone may be related to provisioning on the network, as the likelihood of the phone having hardware issues after constant replacements is very marginal, although with sprint replacements all phones are refurbished, and if there is nothing available of your exact phone you are provided with a similar model. VM may be the same as they are owned by sprint.
So that leads us to the solution. Something like this can be determined through the use of something called the DNA tool, although I am not sure if VM has access to the same tools that I do. If they do then they will be able to see, through DNA, what exactly is going on with your phone. This tool should be available to all care and tech agents, although it is a tech tool, and if they have the same call flows that I have then after troubleshooting with basic things (performing OMA and other refresh's that actually don't do much other then refresh the towers knowledge about the phone, data profile updates and ##sctrn#) the flow should lead them to check a few things in DNA. Most normal care agents don't do that as it also says xfer to tech support. Then again, most agents (myself included, albeit for separate reasons) don't follow their call flows and rather read documents and individual troubleshooting guides to try to solve a problem. As to the exact solution, I am not sure. This is not something that I have ever personally had to do. My advice to determine if this is a network issue and not a phone issue itself is to go into settings and turn off cellular network, if it is available as an option, and run off of wifi. Do the same things that you always do. If the issue replicates itself, I would be hesitant to say that this is solely a network issue. It might also be wise to plug the phone into KIES and see about any updates that you can perform via there.
I just want to say that I identify myself as a care agent for sprint to say that the information I have stated above regarding tools and processes comes from personal experience, and not to say that I am an expert by what I have provided or that I am 100% right. This is just what I have found through being on the job.
As with the reset, it is power + vol up button, release as soon as the screen appears that says recovery booting at the top left or your phone will powercycle and you will go to that screen again, or go through the boot process if you release too late. Performing the hard reset sets the phone back to factory settings and may fix the issue if it is related to something on the phone itself causing the issue, such as a problem creating a clear connection on the network or an issue with the software itself. You will also lose everything that is on the phone, as it restores from something called the recovery partition on the phone that is normally read only.
Hope this helps