You can mitigate this problem in two steps -
1) Apply css to the jqplot-xaxis-tick class (returned by jqplot when it renders the chart) with max-width, overflow: hidden and text-overflow: ellipsis (Although, ellipsis might not look good when most of your labels are long)
2) As @Larry said, you can pick each label and check the length, if long (you can set a threshold), set 'title' prop with your label name, so on hover it will show full name. Ex -
var ticks = chart.axes.xaxis._ticks;
Put ticks in loop and t = ticks[loop_index]
// assuming avg char width is 6 px
if (6 * t.label.length > avgTickWidth) {
t._elem.prop('title', t.label);
}