To increase the longevity of your cassette you need to change your chain on a regular basis. When the chain stretches*, it starts to wear the cassette teeth and sort of marries one to the other. Changing the chain at this point will do no good, and as with wheeliepetes post, will behave worse.
What you'll find there is the chain with slip in a clunking sort of way whenever you put any strain on it.
If the cassette is worn, and after 3000km it sure sounds like it is, your only option is to replace both. Nothing else can be done, its fubar.
This is a problem that doesnt get highlighted enough, you must change your chain on a regular basis. One roadie i know(Ex Scottish road champion) changed his after 3 months on his training bike. He opts for the cheapest chain available, because he's changing it on a regular basis so as not to cost a fortune.
*First person that says "A chain doesn't stretch"... im going to bloody scream lol
The truth there is it doesn't stretch, its just a figure of speech. What happens is the rollers between the links wear and the gap between them, as in the distance is stretched. The chain itself doesn't do it physically.
What happens in real time is the rollers are further apart, and instead of them sitting in the lower part of each tooth spacing(Think waves, so were thinking the wave trough as being the bottom of each gap between the teeth on a cassette) So. instead of the roller sitting in the trough, it is forced hard against the leading edge of each tooth. This causes this part to wear, and that in turn prompts the chain roller to try to roll up it. as it wears the ability for the roller to roll over the top is made easier and thats exactly what happens.
So. Buy your chains the cheapest you can find(within reason). Say for a 9 speed chain, a Shimano HG53 will cost about £7.50, a 10 or 11 speed will cost about 10-12 quid, and swop it out 4 times a year is about 30-50 quid/year.
Incidentally. A shop asking £125 is having you pay for a higher quality chain and cassette than you likely need, a cassette even on am 11 speed deore cassette will be about 50 quid at the cheap end, up to £90+ if its a higher end one like slx or xt 11/12spd
PLUS the cost of the shop fitting them, which in itself is an easy job if you invest in some fairly inexpensive tools made for that job.
Chain whip(£6)cassette lockring tool(£7) and the use of a suitable spanner. and a chain breaker -£15, for an expensive one made by a well known bike tool company called Park, or as low as £3.50.
So your big outlay can cost about £30 maximum for the tools, a tenner for a chain, and a tenner each 3 or so months(and in reality probably every six months, so only two new chains a year) for a new chain.
Tomorrows easy lesson from Andybike - Stripping down your thousand pound triple clamp fork