The fact that you said he is dealing with some emotional issues and feels the need to retreat for weeks at a time makes me think he is emotionally unavailable. Read this blog- it has been a lifesaver for me: http://www.baggagereclaim.co.uk/how-to-spot-emotionally-unavailable-men/
This has nothing to do with you or your behavior. Something about him or in him doesn’t want to or is not able to really connect. If you are in a healthy relationship, it is normal to take a couple of days to yourself. But barely speaking for weeks at a time is not. He is not able to have the kind of relationship you want at this time, so your choice is to let him go, or else settle for what he does have to offer. It sounds like what he is able to offer is not what you want. Staying with him will probably not change this pattern, and you will probably get hurt. Whatever you choose, be good to yourself.