AFAIK most SQL servers have some equivalent of a LEN() function.
Edit: Better yet, try something like this:
SELECT left(post_date, 7) as month,
ROUND(AVG(CHAR_LENGTH(post_title)), 0) as characters
FROM `wp_PREFIX_HERE_posts`
WHERE post_type = "post"
GROUP BY left(post_date, 7)
ORDER BY left(post_date, 7)
This will provide you an average post title length by month.
Edit 2: Incidentally, here's a chart of article and blog title lengths for articles and blog entries on a moderately well-read civic affairs website I edit: http://min.us/mvfTrxx
So I did a quick survey of my blog ( http://www.puremango.co.uk ) which has been running for 6 years.
Here is a graph of the results: http://i.imgur.com/l2iKC.png
There's a slight upward trend, but I'm certainly not seeing as direct a correlation as there is on techcrunch (but then they have more data)
So perhaps this is the result of a particular editorial style rather than a wider trend. Worth investigating though.
If you have a wordpress blog, here's the SQL I used:
Then I just took it into excel with the following formula to count words: