Hi sydney,
First of all let me mention that I run a dive business in Sabah, Borneo (west coast). My advise is based on my knowledge of diving in Malaysia.
From November - Fabruary / March Peninsular Malaysia is impacted by North East Monsoon. This impacts the diving conditions there. Sabah (Malaysian Borneo) is known as the 'Land below the Wind' as it is not impacted by the North East Monsoons. We are still impacted by the North East trade winds which impact the sea state at offshore diving locations like Layang Layang (which is shut from Sept - February each year) and Lankayan.
Sipadan is diveable all year round. Overall, the best conditions exist from April to December, especially July and August. January to March can see some unsettled weather and a decrease in visibility but the diving can still be fine. It is a world class diving location - we've just had a friend come back from diving there and it blew them away. So I agree with OnTheSpot - Sipadan is a great choice for you for diving in Malaysia in December.
There are a range of choices for Dive Operators / Resorts for diving Mabul / Kapalai / Sipadan - from backpacker through to 5* water bungalows. Your choice of Resort / Operator depends up on budget and the quality of experience you are looking for (with both the diving and the non diving parts of your holiday - accommodation, food, service etc.).
If you have a choice when you go in December I'd recommend avoiding any time near Christmas and going earlier in December (when it will be quieter at the Resorts) - this will increase your chance of getting permits to dive at Sipadan.
Enjoy your diving holiday in Malaysia!