Heat a large, 12-inch nonstick saute pan over medium heat and add 2 tablespoons of the butter. Once the butter has stopped foaming, add the ham steaks 1 at a time and saute until golden brown, about 3 minutes on each side. Remove the ham steaks and set aside as you prepare the sauce. Add 1 tablespoon of the remaining butter to the saute pan and once melted, add the onions, peppers and garlic to the pan. Saute until the vegetables are softened, 3 to 4 minutes. Add the chicken stock and pepper jelly and scrape up any bits that may have settled on the bottom of the pan. Bring to a boil and cook for 2 minutes. Remove from the heat and swirl the last tablespoon of butter into the pan. Serve over the ham steaks and grits.
In a large, heavy saucepan bring the water to a boil. Add a generous teaspoon of salt and the grits and stir with a wooden spoon to combine. When the grits thicken, add the milk, cream and butter and return to a boil. Reduce the heat to a simmer, cover the saucepan and cook for 45 minutes to 1 hour, or until the grits are tender, smooth and creamy. Taste and season the grits with the remaining salt and pepper. (If the grits seem too runny simply allow to cook a bit longer, uncovered and stirring frequently, until the desired consistency is reached.) Fold the cheese into the grits, and keep covered and warm until ready to use.