Unfortunately, I don't think there is a built in way to change the distances of the xtitle any ytitle properties. I think the workaround is to use the TEXT function to manually enter the titles. For example:
IDL> p3 = plot(findgen(10))
IDL> xtitle = text(.45, .04, "X title")
IDL> ytitle = text(.05, .45, "Y title", orientation=90)
|