If you are having a few issues or problems with your current shared hosting plan, I would suggest that you work with the technical support team there and see what is causing these issues.
Is it something within your website or applications you are running? If not, then are you falling short of resources like memory, cpu allocation and space? A VPS or a dedicated server would be required when your website is extremely busy with visitors, database updations, mailing and other such hosting activities.
If there is something within your website scripts or application, then you may try fixing it. If it still does not work with your current host, maybe you can try going in for another host who provide better plans and support.
A VPS or dedicated server may not be the correct solution.