1. Shuck the corn, then stand each ear up in a bowl and use a knife to scrape off the kernels; set aside. Put the cobs, 1 cup water, chopped tomatoes, jalapenos or Tabasco sauce and a sprinkle of salt and pepper in a 4-quart pot with a tight-fitting lid over medium-high heat. Bring to a boil, then lower the heat so the water bubbles gently, cover, and cook for 20 to 30 minutes. Leave the cobs in the pot until you are ready to make the soup, then discard them, reserving the corncob stock.
2. Meanwhile, in a large skillet over medium heat, cook the bacon until it begins to render its fat and turns golden-brown, about 4 to 6 minutes. Add the onion and cook, stirring occasionally, until soft, another 5 minutes or so.
3. Add the milk, reserved corn kernels, and bacon and onion to the stock, and bring to a boil; lower the heat so that the soup bubbles gently. Cook, uncovered, stirring frequently to prevent scorching, until the corn is tender, about 10 minutes.
4. Whisk the cornstarch in a small bowl with 2 tablespoons water until smooth. Add to the soup, stirring until the soup thickens, about a minute. To serve, top each bowl with grated cheese and garnish with freshly chopped cilantro