Our company uses Redmine to handle projects.
Now I don't know how you want to present the report, but with Redmine we give fine grained access* to our clients where they can follow the actual state of the project, they can see what tasks are done or blocking other tasks, and while every task (done/open or closed) is commented, they get an rather detailed inside on the status of the project.
And with the version control of project steps (Roadmap), they get a detailed list of how much overall is done in percents and expected date of release (or how much time overdue).
So all you asked in your question we do with Redmine. If you're looking for an hosted solution, there is planio who host Redmine installations.
Take a look on those, maybe you'll find thzm as useful as we do.
* fine grained means that we give not access to all the tasks concerning the projects. Some tasks are internal and don't concern the client.
We're not affiliated with either mentioned links.