Heat a large dutch oven or stock pot over medium heat. Once hot, add ground beef and break up with a wooden spoon. Season with 1/2 teaspoon kosher salt and 1/2 teaspoon black pepper. Add onion and garlic and continue to cook until no longer pink. Add beef stock and potatoes. Bring to a simmer and cook for 10 to 15 minutes, until the potatoes are tender.
Meanwhile, make the cheese sauce. In a saucepan over medium heat, melt the butter. Add the flour, 1/2 teaspoon kosher salt and 1/2 teaspoon black pepper. Whisk into melted butter and cook for 1 minute. Add half and half and cook until slightly thickened. Add velveeta and shredded sharp cheddar. Stir until cheese is melted.
Pour the cheese sauce into the beef and potato mixture. Gently whisk until it is completely combined.