There is no serious dispute that, in linguistic and general usage, Cantonese is a Chinese language in English, or 汉语 in Chinese.
The question is that 中文 and 华语/华文, while generally synonyms of 汉语, can carry different connotations or even has semantically narrowed in some cases.
First as a disclaimer, as a native speaker of Mandarin (northeastern China), I am biased towards my own usage/experience and the usage I am used to, which is necessarily incomplete give the size of China and other Chinese-speaking territories. I will first give my first impressions about this question, then clarify where I can find support from other sources.
My first impressions:
- "我说的是中文歌而你唱的是广东话" sounded awkward to me, but it was not clear why.
- "我说的是汉语歌而你唱的是广东话" does not sound awkward to me; but I would have immediately registered it as an incorrect statement.
Similarly, while I would say of course to "粤语是汉语", I have to think and feel I have no choice but to accept "粤语是中文" as true.
Although here I cannot discern the difference clearly, there are clear usage differences between 中文 and 汉语 in many cases (at least in my experience): for example, you would almost always say "中文" when referring to the Chinese version of a website or book.
As the last character indicate, 中文 may put a little bit of emphasis on the written system of Chinese languages, which nowadays, in relatively formal settings, overwhelmingly correspond to the current standard variety, Mandarin. This does not preclude 中文 from being used for the oral language though, e.g. there is nothing wrong with saying 中文歌 or 中文频道。In the latter case (中文频道, Chinese channels), most TV or radio branded with 中文 would be using Mandarin. The meaning of 中文 has narrowed in some cases compared to 汉语 such that you would expect Mandarin for 中文 since 中文 is more widely used and in many usage the standard Chinese is implied by the term.
Semantic narrowing does not have to be logical or technically correct! It is common for absolute synonyms to acquire different specialized meanings or connotations for both to remain in common usage. For example, "meat" in English used to refer to all food; "man" used to mean (and still mean in some cases) all persons, not just adult males
Going back to the incident in the question, there is another point to make.
There was some kind of sales activity where people were being given freebies, if they would come up in front of everybody and sing a song "in Chinese". I don't recall why there was that qualification because apart from me everybody in the vicinity was a local.
I would think that they specified "Chinese" as opposed to English or another foreign language. The Chinese variety spoken in Zhengzhou is Mandarin. So while they said Chinese, they expected Mandarin. Whether Cantonese is Chinese or not is not a question people usually think about. They probably just wanted to hear something they or most of the audience could understand.
In the context of music particularly, Cantonese music (especially pop) is a very popular and distinct genre of music. While you will see 华语 is often used to refer to Chinese and "technically" lexically equivalent to 中文 (中/华+语/文), 华语歌 in my experience overwhelmingly refers to Mandarin songs.
In this context, some people may also have a narrowed sense of what count as 中文歌, since they may consider Cantonese songs to be sufficiently distinct as a group. This is a well-known source of semantic narrowing and can often happen in special cases (Macs are personal computers, too).
While I think 95%+ of Mandarin speakers would agree 粤语是汉语, I would expect a significant amount of Mandarin speakers who would not agree that 粤语歌是中文歌 at first sight, even if they may agree with the statement after brief reflection (or not so brief).
I apologize that the answer is disorganized, but I also hope to share that the relationship between various dialects/topolects/languages in the group of written and oral systems of communications commonly known as Chinese is... complicated. The usage and connotations of words are also hard to discern.