Language is one of those subject that has no one correct way of tackling. Being in Singapore itself can be a disadvantage as singlish (as much as it, representing a specific culture here) is influencing alot of young people away from the correct, proper english.
To improve any language, there are a few very simple and effective ways (no fees or courses required). One is to avoid adding any dialects or in this case, singlish into everyday conversation. Secondly, you have to be very cautious about your grammar and sentence construction. A simple way of asking "where are you going?" often ended up a singlish way of "you go where har?"
After carefully watching your speech. You can try starting a diary or a journal where entries of everyday events, big or small can be recorded. Practicing writing in a relaxing way daily, can subconciously encourage better writing in the long run.
Once you master your everyday speech in fluent english and fill up your dairy/journal with interesting events of life, you are almost quite good in the language, both written and spoken.

I study linguistic and communication. And even professional writers keep journals and practise writing everyday.
Last but not least, picking up a good book is a good way of learning the style of good writing. Forget about self-help books. Pick up the highly aclaimed "harry potter" or a heavier read of "anne rice's. Either way, you get a different genre of books and very different writing styles, well, of course, different target readers.
So, happy reading, start writing and speak ENGLISH!!