Add chopped onions to a large saucepan and heat until a drop of water added to it makes it sizzle.
Stirring frequently, sauté onions until golden brown. As the onions begin to brown and stick to the pan, move them aside with your spatula and drizzle a little water on the browned spots on your sauté pan. Scrub the caramelization loose with your spoon or bamboo spatula to pull it off the pan. Move the onions to the area you just scrubbed. This will pull the caramelization off the pan and onto the onions.
Continue pulling the onions off the areas of the pan that is developing caramelization, adding small amounts of water to loosen the caramelization, scraping with your spoon or spatula. Allow most of the water to evaporate before moving the onions back into that spot. Repeat process until all the onions are golden brown.
Add mustard, sesame, coriander seeds, bay leaf, green and black cardamom pods, and cinnamon stick. Stir in garlic and ginger and continue sautéing until the garlic and ginger are soft and the mixture becomes fragrant.
Stir in previously reduced tomato sauce.
Stir in ground coriander, ground cumin, turmeric, black pepper and garam masala. Add a little water to aid in combining ingredients.
Stir in up to 1 1/2 cups water, reduce heat, cover and simmer for 5 minutes, stirring occasionally.
Pick out cardamom pods (both green and black), bay leaf, and cinnamon stick. Discard.
Transfer mixture to a blender and blend until smooth.
Wash sauté pan and return it to the stovetop.