Bavauto I think sells the cupholders...
The glovebox issue is a comon problem on our cars... I am sure you can find a DIY fix for it somewhere here... if not use this:
Fix A Sagging Glovebox Door
Tired of your glovebox door sagging down and leaving a gap at the top? Of course you are! Here's a quick and simple way to fix it.
You will need the following:
- Hand drill
- A small drill bit
- Tape measure
- Small screws
Open the glovebox. Along the top edge of the glovebox measure and mark spots 2 1/2" to the left and right of the latch. Using a drill bit that is slightly smaller than the treads of your screws, drill holes when you made the marks. Tighten a screw in both holes. The screws will clamp the glovebox tighter against the vent panel behind it.
And I am pretty sure you can find the touch-up-paints at your local BMW dealership, if not let me know what color your car is and I'll tell you what color from another brand would match it best....