I have the same problem with some of my Jobs.
I'm using Hudson 1.352 with Sonar plugin 1.5 and my jobs are using CVS as SCM.
For one Job I checkout only one folder containing all my maven projects and the sonar plugin can find the pom file using the path specified for the maven plugin.
For other jobs I checkout several projects (which forces Hudson legacy mode) and this time the sonar plugin cannot find the pom file.
From Hudson logs I found out that in the first case, the sonar plugin is launched from the workspace root whereas in the second case it is launched from the first subdirectory defined in my list of CVS modules.
It maybe a side effect of the CVS plugin but one thing that strucked me is that the maven plugin looks for the pom file using an abolute path (by appending the workspace path to the pom file path) whereas the sonar plugin uses the same parameter (pom file path) but as a relative path.
Therefore there is no way to make it work, I have to invoke sonar directly using a M2 post-build step and the sonar plugin is no use at all to me ...