Eijiro gives the following words for "improve": joutatsu suru 「上達する」and koujou suru 「向上する」. However, they are not identical and I've done some research on the difference.
Let's start with the sample sentences from jisho.org (which uses the Tanaka corpus):
Kimi no Eigo wa joutatsu shite iru.
Your English is improving.
Kare no Eigoryoku wa ichijirushiku koujou shita.
His English abilities have remarkably improved.
Note that joutatsu was used with Eigo, while koujou was used with Eigoryoku. This gives us one difference between the two: for 上達, what is relevant is the thing which is being improved on (in this case, English), while for 向上, it refers to something that goes "up" -- in this case, it is the English ability, and not English the language per se. If we say
Eigo wa ichijirushiku koujou shita.
English (the language) has remarkably improved.
then we get a completely different meaning.
In some cases (like English ability), 上達 and 向上 can both be used with a minor change in sentence construction. However, in some cases, only one of the verbs can be used. 上達 is used for things where you can improve with practice, like sports, language abilities, piano skills, etc. 向上 has a wider scope, and includes improvements in condition, living standards, production, etc.
Here's a thread (in Japanese) about the same question. One of the replies says that 上達 means to "get better at something", while 向上 is more like "to advance in a good direction".