Michael-
I think you’re getting to the root of the whole "template model" problem... don’t know exactly what it’s called (and it’s difficult to talk about), but essentially the problem can be solved by having the templates PULL data into them or have the content PUSH data to the templates. MODx uses the push model where the page data pushes itself to the chosen template. I know Expression Engine uses a pull approach (they don’t call it that), where you create a template and then you put logic in that template which pulls data from the content (which lives in a weblog somewhere). Personally, I find MODx’s push method to make more sense, but after getting vehemently flamed in the Expression Engine forums, I realized that this may just be a matter of personal taste.
The solution that requires the least amount of work is to adapt your site (and probably your thinking) to the "push" model... but I know how much that just chaiffed my brain when I had to cross-over.
Maybe you can clarify: are you using the EXACT SAME content on more than 1 page? Based off or your URLs, I’d say that you aren’t... you’d have cricket content on the cricket page, football stuff on the football page, etc.
Here’s one solution that may not actually work for you, but hear me out. Let’s say your football template has image of a football, the tennis template has a tennis ball, etc. Why not just create a single generic template and then add a template variable where the image path can be stored. In your template you’d have something like
<img src="[*specialized_ball_image*]" />
and then on your page, you’d specify the path to the image. You can even utilize the inherit properties so that all football pages inherit the football image used by their parent (as one example).
You can take this concept even further by creating custom chunks for each sport, and then use a template variable to reference those chunks.
Have you worked with template variables before? Does this solution make sense to you, or is it completely off the mark?