Have you considered an oral presentation rather than written homework? I do this quite a lot with my private students, usually about once a month. The student gets a choice of topics (or they may choose their own), and talks about one the following week. Between classes, he should research, take notes, and prepare to speak for 5-10 minutes (depending on the ability level).
It's very important to stress that you don't want a dry monologue, but rather a conversation. As such, the student shouldn't write a long speech to present, memorize, and then rattle off. He should instead have a conversation on the topic, which means asking and answering questions related to the subject... exactly like a real, dynamic conversation. During the process, take notes on mistakes, weak points, etc. Then present and teach relevant target language at the end. At the next presentation/conversation, I always remind my student of his weak points, and listen for these specifically, as well as any other relevant mistakes.
This activity works with any level of student. Beginners can talk about hobbies, likes/dislikes, and family. Intermediate students can talk about vacations, jobs, and school, or even some well-known news items. Advanced students can talk about any current event topic in the news.
Chris Cotter
www.headsupenglish.com