Pat veal pieces dry with paper towel. Season with ¼ tsp salt and the pepper. Heat oil in a large flameproof casserole over high heat. Working in batches, add veal and brown on all sides, about 4 minutes per batch. Transfer veal to a plate.
Lower heat to medium. Add mushrooms and shallots to casserole. Sauté until shallots are just golden, about 5 minutes. Stir in flour. Add veal, beer, vinegar, thyme and the remaining salt. Bring to the boil. Add carrot; cover. Lower the heat and simmer until veal is tender, about 1 hour 15 minutes.
Transfer veal, carrot and mushrooms to serving dish. Boil sauce until reduced to about 300ml. Pour over veal.