THAT will be hard if not impossible to debug. I have few nodes that work without intervention since feb. 2017. The only problem I had was every time lightning struck near by it locked up on PI side. I don't remember the fix, I think it was something to do with lack of ground
Gateway and Struct_send and Struct_receive worked for me on 868, but as I remember I used Struct Receive with Struct Send
What I would do is check if gateway locks up by have ready one Moteino as Gateway or PIgateway, so when your network locks up, you can see if the nodes are still sending and by doing that, you can focus to your gateway or not. Maybe that is the problem. Maybe even setup another identical Arduino UNO+Ethernet shield and do something like "if one is down, other will take over". This way you can try to debug first gateway that locks up for some reason. But I would make sure, you have so "yes I am alive" code on gateway, since now you don't know which part of gateway stops working (network, proc., receiver,..)