when it cranks over does it sound like its dragging? Like a slow crank of a battery dieing or is it a normal crank then starts dieing? If the battery tests fine, and its still a slow crank could be what the mechanic says and starting to freeze up so the rust is starting to tighten the pistons along the walls slowing down the crank.
Besides WD40 there is some engine freeze stuff you can use, can't remember the name but there was a thread here recently about it I will try to find it for you.