Yes, you need an integrated approach to SEO. And in competitive markets it does take time. However, there are no guarantees.
You must wait more time to access to first page for some strong and competitive keywords. I believe google does this to prevent spam and know better your website.
if you are on the second page i would continue with the link building, you will get there eventually, you may also like to try adjusting your content with small tweaks, if you dont improve in the rnakings you can always revert back.
Actually, Google love Optimization in a organize way like Blogging or Blog Linking, Smart Linking etc.. You can think for good Blog Links.