Our 2004 E46 had a similar problem with the Fuel Gauge.
I turned out it had a fuel tank sender going bad.
2 problems with that:
1. There are 2 fuel senders, and you can't tell which one is bad
2. The fuel sender that went bad was the one that attached to the fuel pump...expensive
The real bad news is that eventually, the fuel gauge stopped working all together, and the sender shorted out the instrument panel cluster
$2000 later, the car is now for sale. The instrument cluster part is $700.
Take it to the dealer now, it may still be under warranty, as some fuel system parts are covered by the emissions warranty.