This game is a bit of an obsession for me. I thought about it a lot when I was working on HR. Mostly because you created a rather complicated situation having single lines for the walls.
I think one could potentially use Arduboy2Base::collide but defining all the rectangles would be time consuming by hand and a real pain to add new stages.
So I think Arduboy2Base::getPixel could be used to scan the edges of the rectangle created by the snail graphic(plus a one pixel border). Then restrict the movement in the directions one finds a set pixel. It is likely not the most efficient means of doing the detection, but I think it should work.