I know the question is almost two years old, but I wanted to share my approach, as I too found the above solution (cloning reports for each language) to be quite daunting in an organization with a large number of supported languages.
Basically, my solution would consist of the following:
- create default chart for each report (Reports > YOUR_REPORT > Customize > Add Chart) - the charts should resemble the ones used in dashboard
- create VF page for each chart (report) in the dashboard, and embed the reports' default chart in the VF page using analytics:reportChart component
- create custom label for title of each report (with as many translations as much languages you wish to support)
- in the VF page of each report add label reference for each reports' title
- in the dashboard, instead of using chart components, use your newly created VF pages
You should get something similar to the screenshot below (VF page as dashboard component is used only for right component of the dashboard; upper screenshot is as seen by user with English locale, lower screenshot is as seen by user with German locale):

Code for the VF page is quite simple:
<apex:page showHeader="false">
<style>
.asOfDate{display:none;}
</style>
<div style="border-top:3px solid #861614; padding-top:3px; padding-bottom:5px;">
<h2 style="font-size:14px; font-weight:bold;">{!$Label.Report_Title_Planned_Visits_This_Week}</h2>
</div>
<analytics:reportChart reportId="YOUR_REPORT_ID" size="small" showRefreshButton="false"></analytics:reportChart>
</apex:page>
Hopefully someone might find it useful.