I read your question carefully and also read some reply of this thread of expert people. But here i am giving my views on your issue related to rankings of your site. The activities which you have done till now is related to SMO. You have not yet applied static SEO activities which improves the strength of your site such as link building, directory submission.. You got good rankings because you have listed your site on smo site such as bookmark, article etc.. Such activities are not permanent and after some time your link go far away from the home page of such smo site. So when you are in good page you got good rankings but after some time your listing go faraway from the home page of the smo sites which results you drop in rankings. So if you need stable ranking the do some reliable seo activties which improve the back links else you will be fluctuated in ranking everytime.
Your seo company you chose might have done some quick blackhat seo backlinks. This usually gives a temporary boost to your rank but will be figured out and "poof" you drop back down.
You better to gain some quality back links to your site continuously... that will help to your site. Also check the how your competitor working on his site.. check his backlinks and your backlinks every month... does those gain backlinks are not... if those got better to you also create good and quality backlinks as well as update the unique content on your site... content will lovable by search engines...
I guess maybe your bookmarking backlinks might not be a sticky/permanent ones.Just try other things like articles,forum and blog posting.It would help you a lot.