How to represent text for a program to add punctuation to a block of text?
I am making two assumptions here about things that, to me, are not quite clear from your question


When you say you removed punctuation, you actually meant whitespaces as well.
You tried neural networks, but not in a sequence-to-sequence fashion.


What's nice about your problem is that you can generate training data as much as you want just by taking a proper piece of text and removing all the punctuation.

This being said, I suggest you engage your problem as a machine translation task where you want to predict the proper text given the one without punctuation. 

Today, the best way to do this is by sequence-to-sequence learning with deep neural network (just pick a few machine translation papers from last ACL (= Annual Meeting of the Association for Computational Linguistics) conference to learn more about that. 

Concerning you actual question, how to represent the input, I'm not quite sure if you have to limit the size of your input beforehand or not. In any way, you could choose the size of your input window so that any block of text that you possibly want to put in would fit (if you know beforehand how long your paragraphs will be). Or it might be that you can just cut your input sequence at an arbitrary letter and your model will learn to make sense of it anyway (I am not an expert in neural machine translation). 

So, as you can see, my answer is maybe not completely on the spot but I hope it is helpful to you anyway.