The problem is not related to the .cls file and is well documented, see e.g. amsthm with shared counters messes up autoref references
You could use any of the two solutions proposed in that post, and I would recommend using cleveref as in the second one. To do that, just include
\usepackage{cleveref}
in the .cls file, right after
\usepackage{...,amsthm,...}
Then use \Cref{lem1} (instead of autoref) in the document. The code would be:
\documentclass{article}
\usepackage{hyperref}
\usepackage{amsthm}
\usepackage{cleveref}
\newtheorem{theorem}{Theorem}
\newtheorem{lemm}[theorem]{Lemma}
\begin{document}
\begin{lemm}\label{lem1}
This is a lemma.
\end{lemm}
By \Cref{lem1}, we have.
\end{document}
If you didn't want to modify the .cls file, an easier but less robust solution is to define a newcommand \lref for lemmas (and then another command \dref for definitions, etc.) through
\newcommand\lref[1]{Lemma~\ref{#1}}
I say this is less robust because you can always make a mistake and use \lref to quote, let's say, a definition.
\documentclass{article}
\usepackage{hyperref}
\usepackage{amsthm}
\newtheorem{theorem}{Theorem}
\newtheorem{lemm}[theorem]{Lemma}
\newcommand\lref[1]{Lemma~\ref{#1}}
\begin{document}
\begin{lemm}\label{lem1}
This is a lemma.
\end{lemm}
By \lref{lem1}, we have.
\end{document}
Thesis.clsorthesis.cls. Where did you obtain your variant from? – Mico Mar 19 '15 at 15:47