SMS messages never delivered if target phone is off-network
After doing a lot of research around this issue, I deleted the relevant contact, and all the conversations, and after adding the contact again, everything worked OK.

I believe it has something to do with having multiple copies of the same number in the messaging system. ie +447891.... 07891..... 447891... etc I might be completely wrong about this. But it definitely works now, on all 3 messaging apps that I have tried.