£300 is way overpriced I'd say, compared to what you can get on Android for that. The iPhone is pretty old now (though I'm still using mine daily).
Look at prices of some of the near immaculate phones in the GD.
iPhone 7 is ‘3rd’ tier now so you are right to question how long they will support it.
New iPhone SEs are going for about £250 if you can find stock which is a tier lower so £300 is a bit steep for a refurb. On the flip side the 7 is a much better phone.
That said they still support the 5S but I wouldn’t expect them to continue to do so in the next release. Rumour has it the 6 will also lose support next time round.
Consider how long the 5s is supported - I wouldn’t worry too much