It turns out that the reason for the spray arm catching is limescale build-up, even though I don't live in a hard water area. The build-up was uneven, causing the arm to spin unevenly. I ran a wash cycle with a small bottle of white vinegar, which removed the limescale, and the arm now spins evenly without any banging. Now all I have to remember is to add some white vinegar from time to time. Malt vinegar or other non-white vinegars will stain.
Alan G
May 2013