Ed Sheeran seems like a nice guy. However, he is also a brand, with a team of people who schedule his events and his timings - the more money he makes, the more his team get paid. While I'd love to believe that Ed Sheeran is doing this from the goodness of his heart, some publicity will be involved.
Ed Sheeran, just like every other entertainer these days, does everything for the publicity. In this day and age, entertainers get paid just for getting attention. Ed Sheeran knows this, as does every other highly paid entertainer. I don't expect any sincerity from celebrities because they do everything for publicity, which equals money.
Ed is not like that. He genuinely cares about people because he is just a good person. "Everything celebrities do is publicity based" is a stereotype and is wrong. He loves to do things for people. He knows that his music makes people happy. He knows it is strong and holds a relatable message.
Ed Sheeran strikes me as a man that cares about his fans and would like to spread them a little extra joy by surprising them. Sheeran has been active in performing for charity events and taken part in other philanthropic activities. Would it be so surprising that he is a nice man who wants to surprise fans? I can't say to a certainty that he is not motivated by the publicity, but there is no need to cynically dismiss him as doing just that.
Ed Sheeran has a lovely heart and soul , and is not possible for him to do such thing . based on the music that he makes i believe he could never do such thing as buying publicity from his fans. But of course, no one can ever know for sure.