I would concentrate more on your behavior and less on your husband's. It sounds like you are giving him gifts with the idea that they "should" be repaid. If you want your husband to text you at work, you probably need to tell him; "text me this evening right before you go to bed, I really enjoy hearing from you when I am at work" instead of just being vague about it, merely thankful when he does, thinking that will get him to do more.
We have to "train" other people, educate them in what we like, they cannot always infer from comments what we want them to do. Texting him that he's the best thing that ever happened to you and his texting back "thank you" is a good exchange; I do not see anything there to be disappointed with? You cannot expect him to text on his own, necessarily, he may not enjoy texting? Guys think differently and are not necessarily as demonstrative as we are. If we are honest with ourselves (
Why did you text him he was the best thing that ever happened to you?) we often have a whole lot more going on with our behaviors, an agenda of our own and, because we see it clearly, think those around us can too; but they can't read our minds!
One thing that helped me with my husband's behavior was realizing that things I thought he should do were things I wanted done. Think about that; whose responsibility is it to get the things I want? Mine. When I would get annoyed at him because the kitchen trash can was overflowing, I'm the one that sees/cares so it is my job to empty it or to
ask him if he would empty it. We assume other people see what we see and feel what we feel and want what we want but that is not true. There is no right/wrong way or time to put the toilet paper on the roll

It's all how we have grown up and become accustomed and that's not necessarily our SO learned/likes.