I've heard that the contacts can be cleaned, and that it is sometimes cured by doing this, but I didn't do this myself as the pump had also failed on mine.
A new pump cost me £115 a couple of years' ago from an independent supplier - I'd imagine that the cost from BMW would be greater.
The transplant will take you less than half an hour, and that's leaving a big margin for someone who's not too sure what needs to be done.
First thing ... get yourself a manual.
Second thing ... I neglected to tell you that there's a second, separate, sender unit in the LHS of the tank (it isn't part of a pump).
I would remove both, and check the contacts, before I spent any money. Also remember, disconnect the battery and run the tank low on fuel before you examine these units. You don't want any sparks!
Stephen