Hi and welcome. When you say your blood test six months ago was "fine" what was your actual HbA1c result? There's plenty of accounts on here of people who've been told things were fine only to discover later from the actual figure that they weren't.
Those figures you give are (as you realise) high. Two hours isn't really fasting, though, and could still be showing the impact of what you last ate. The context of the test is also important - stress and illness are both reported to raise blood glucose significantly.
There is also the possibility that your tests are contaminated or the strips are out of date. You can get really odd results if you accidentally re-use a test strip.
There's two sources of glucose - one is from the food you eat and the other is made by your liver. If it's not coming from food you ate (and it still might be - you find that out by before-and-after testing as
@LivingLightly says) it's being made by your liver. If so there's not a lot you can do in the short term - livers can be trained to produce less glucose but it takes time for them to adjust. Mine took months. The problem is that the liver has got used to elevated blood glucose levels, thinks they're the norm, and does its best to keep yiou there.
Metformin will slow or stop the liver adding glucose, but it takes a few days to work and there are often unwanted side-effects - I have no experience of metformin myself, but there are plenty of experienced users on these forums.