@Ogah. It's not just a case of bandwidth and space but of memory. When you are on a shared server then it is logical that the server would be set up in such a way that it would limit you on the memory that you may use, otherwise the shared memory will be exhausted pretty soon for every one else. Your scripts are so complicated in the way they work with one another that they are using much more memory than they should be using. For example, having Cloudflare activated made it worse as Cloudflare has been set up to fight with scripts that it thinks are a security risk. So that may be the reason it went in a loop to the extent it looked like you were being ddosed by its IP. And of course that looping exhausted your memory on a free shared server.
If you want to continue this way then you need to follow DJB's advice and get the maximum memory you can find.
I've put in a few hours tonight trying to figure out a way to remove the 500 error but obviously I can't. If it could have been done, DJB would have done it for you. So looks as though you may need to start from scratch. You have two choices. Get more memory, or if you want to stay with free space, I suggest you make a full backup of all of your files, and export your database. I'll then delete your hosting account and recreate it again so you start completely fresh.
I'd get rid of cloudflare for sure as I've picked up in my researches there are many users like you with scripts that land into problems with cloudflare. Cloudflare wants simple for it to work effectively and may detect security risks in the scripts, and it then acts in a way that creates a memory drain for you. I'd also keep my WP design simple. Read all of the reviews in each theme and plugin very carefully before I install them, as it is easy to pick up on whether a plug-in is unstable by just doing research of other people's experiences before you install it.