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!!