Next time some ignoramus yells at her for not speaking English, she should say clearly, slowly, in French that she IS speaking one of Canada`s official languages, and why is he -- an official of Canada – not able to speak both official languages? Then call for his supervisor.
I am not sure why she is getting so much hassle at the border – unless it is because she is visiting so regularly that the border officer suspects she is not just visiting, but perhaps getting ready to stay (illegally).
If you think mentioning that she is visiting her boyfriend might arouse suspicions, then have a different, specific reason to visit the country – a specific event or concert or tour that makes it credible for her to come each time.