First, prepare the beans.
Rinse the dried kidney beans thoroughly and place them in a large pot or Dutch oven.
Add the water, corn oil, half of the chopped onion, and 2 teaspoons (10 ml / 0.3 fl oz) of salt.
Bring to a rolling boil, then reduce the heat to low, cover, and let the beans simmer gently for about 90 minutes.
After 90 minutes, remove the lid and continue to simmer, allowing the liquid to reduce and thicken while the beans become completely tender. This may take another 15-30 minutes.
While the beans finish cooking, heat the olive oil in a large, heavy-bottomed skillet over medium heat.
Add the remaining chopped onion and the minced garlic, sautéing until softened and golden, about 5-7 minutes.
Stir in the chopped tomatoes, minced jalapeños, lemon juice, the final teaspoon of salt, ground cinnamon, and ground cloves.
Cook for another 2-3 minutes until fragrant.
Carefully pour the cooked beans and all their thick liquid into the skillet with the seasonings and stir to combine.
Reduce the heat to low and continue to cook the bean mixture, stirring frequently to prevent sticking.
Let it simmer until it has thickened to your desired consistency but is still moist and creamy—this can take anywhere from 20 to 45 minutes. If the mixture becomes too dry, simply stir in a splash of water.
To finish, stir in the butter and optional Jack cheese.
Continue stirring gently over the low heat until both have completely melted into the beans, creating a rich, glossy finish.
Serve immediately.