Are there any tools which can be used freely to review apex and visualforce code written and provide some suggestions about code improvement and applying best practices. I need to check quality of apex and visualforce code written and improve the same.
There is the checkmarx based force.com scanner: http://security.force.com/security/tools/forcecom/scanner
Have a read of the faq stuff first and I think it's really aimed at partner/appexchange apps but it's useful. It's not meant to be used often (I.e. Part of an organisations development cycle) but the site does explain that.
There are not many options for static code analyzer like we have in Java.
However you can try the Apex PMD plugin for eclipse. Available at http://codescan.villagechief.com/eclipse/
Github, Jenkins facilitate the code review at peer level but does not provide any analysis on its own like PMD, FindBugs