Why is bolognese cooked for so long?
There are several phases meat goes through when simmering - a better-educated chef than myself could probably give them all names, but with no formal education, this is what I've noticed over the years.

If you're going to cook mince for a long time in a sauce, you'll not be interested in the first one - that's more for a burger.

When first fried until a good brown, you could eat it just like that - tender &amp; 'just done' - fine for a burger, not for a long-cook in sauce.

Once you mix it into the sauce &amp; bring it to simmer, it's then going to spend the next hour not smelling all that good &amp; if you taste it, it's decidedly rubbery.

This next bit can depend on temperature - much longer in a slow cooker than on the hob.
Somewhere between there &amp; about the 4-hour mark the rubbery gives way to 'just right' then goes too far &amp; becomes 'grainy' - the 'sandy' texture you alluded too.
This 4-hour delineation seems to be the same whether it's mince or chunks of casserole steak.

So, my best guess is you're cooking it too high.  

If your ring won't drop to 'barely, barely visible bubbling' at minimum with the lid on then I'd invest in a simmer ring to put underneath [$£€ 2.50 on eBay] You may need to actually lift the ring temperature with one of those on, or consider it a poor-man's slow-cooker, as you can get it cool enough to be bubble-free with one under the pan.



Once you can get the heat down, your 4 hours should then be fine. Cooking with the lid on means you don't have to watch over it so much in case of evaporation; but you do need to reduce your liquid levels slightly to accommodate that difference.

I tend to consider my bolognese [or chilli, shepherd's/cottage pie, or any long-cook on tomato &amp;/or onion] to be done when the onion pretty much disappears when you stir it in.

One additional note.
If you get your mince from a supermarket, these days they all tend to add the 'legal maximum' extra 10% water, which means it won't fry properly at all if you add it to your sautéd veg.
My workaround for that is I blast it on full-flame in my largest frying-pan, separately to the veg, which can be ticking over nicely in the saucepan at the same time.
Once you can evaporate your 'free water' from it [I never pour it off, I evaporate it all away], then you can get a brown on it. [This would be 'overdone' compared the the 'burger-ready' first phase from above &amp; already into the 2nd phase].
I tend to find if I drop my onions etc first, I can get the meat fried in about the same time it takes for the onion to be ready for it. I deglaze the frying-pan, of course, after that &amp; add it to the saucepan.