You can't really improve speaking (active skill) with books. Listening and reading are passive. You need to practice speaking to yourself, friends, your bathroom mirror to improve. Perhaps you can enroll in an English club/group where you are located.
For grammar, look at the Powerscore SC
book or the Manhattan GMAT SC
Book - both are equally good. You can also use many of the TOEFL Books as those may be more appropriate for building fundamental skills rather than focusing here and there as GMAT books tend to. I found TOEFL material to be the best place to start for those weak with grammar
You just need to write - that's the only way to learn. There are books that teach essay writing and formal writing.
One option that may help with most of these is what Dzyubam suggested - reading good quality fiction books that will improve your vocabulary, understanding, grammar, and style - see this link: GMAT Fiction
Founder of GMAT Club
Just starting out with GMAT? Start here... | Want to know your GMAT Score? Try GMAT Score Estimator
Need GMAT Book Recommendations? Best GMAT Books
Co-author of the GMAT Club tests
Have a blog? Feature it on GMAT Club!
GMAT Club Premium Membership - big benefits and savings