One mistake that people often make is putting in effort to study grammar rather than conversational English. In order to become a good English speaker, remember to focus on actually conversing rather than just memorizing grammatical rules. To speak good English you need to focus on conversing!
Also remember to LISTEN! Sometimes, you can begin to understand other people before actually being able to speak fluently yourself. This is a step in the right direction. Being able to understand others will help in forming conversation yourself. Be sure to completely immerse yourself in the language. If you continue to limit yourself to social circles that do not speak English, it will make fluency that much more difficult. By submerging yourself in the language you will be forced to learn and use the English language.
Another tip is to not translate each and every word or phrase that you hear. Often you will misunderstand the topic of conversation by taking the most literal translation of each phrase. As in every language, English speakers often revert to slang and cliches. Don't be afraid to ask what these mean, by understanding these phrases you will be that much closer to fluency and on your way to being able to speak correct English.
Most importantly, remember that all the listening and reading in the world will not make you a better speaker. Many people are intimidated at first when they try to jump into conversation, but it is the only way to improve your fluency and speak fluent English. Don't be afraid! People will be more impressed at your ability to speak a second language than your accent or mispronunciation of words.
Use any resources you can to better your English language skills. Doing research online and in your local library will help to strengthen your fluency, but nothing is better than getting out into the world and putting all you have learned to good use!