Im not sure what's faster, the spamming of Gaara's sand or the growth of Hashirama's trees. Due to Hashirama's skill set being very effective against biju, I don't see Shukaku getting very far. I do believe it is possible to trap Hashirama into a sand prison which may actually end this battle. Hashirama's massive list of jutsu may also be enough. Gaara can also fly above the sky so it's not like Hashirama can travel too high on his trees for him to reach. These ninja are also known to use very large and powerful attacks.
As for defense, Gaara's sand protects him automatically which comes in handy as I don't see Hashirama with attacks swift enough to actually get through. Let's all remember lee attacking him at all directions at the sand that was constantly protecting him, and I don't think Hashirama is close to reaching that speed. Hashirama on the other hand, can block a biju bomb, not sure if Gaara could, but I doubt Gaara's sand couldn't break through his wood which is awkward. I also doubt that Gaara would last against Buddha, so my vote is for Hashirama but hell he might have to open up to sage mode to use his great attacks. This is hard difficulty for Hashirama at best