Add chopped onion, garlic, and ginger to a food processor and blend into a paste.
Heat oil in a large skillet over medium heat, then add the onion paste and sauté it for about 10 minutes, stirring continuously.
Mix in the cumin, turmeric, salt, pepper, cardamom, cinnamon, cloves, bay leaves, and nutmeg.
Stir and cook the spices for 1 to 2 minutes.
Add chicken pieces and coat them well with the spiced mixture and saute for 4 minutes.
Pour in the tomatoes along with their juices, stir everything together.
Reduce the heat to low, and simmer the mixture for 1 to 2 hours, stirring occasionally, until the oil separates from the sauce.
Once the oil has separated and the chicken is tender, remove from heat.
Discard the bay leaves and whole spices if desired.
Serve hot with steamed rice.