I am posting this answer for future reference (because I am not an advanced LaTeX user and did not know of existence of amsthm
package before).
This solution uses amsthm
package and works nicely in amsart
as well as when changing to other standard document class. It adjusts to global rules of indentation and does not break existing theorem styles.
\documentclass{amsart}
\usepackage{amsthm}
\newtheoremstyle{fancyindent} % name of theoremstyle
{.5\baselineskip±.2\baselineskip} % Space above, these are standard values for AMS class document
{.5\baselineskip±.2\baselineskip} % Space below
{\itshape\addtolength{\leftskip}{15mm}\setlength{\parindent}{0em}} % Body font +indent added +no indent between paragraphs
{-15mm} % Indent of header amount
{\bfseries} % Theorem head font
{\newline} % Punctuation after theorem head and start at new line
{.5em} % Space after theorem head
{\thmname{#1}\thmnumber{ #2}. \thmnote{[#3]}}% Theorem head spec (can be left empty, meaning ‘normal’)
\newtheoremstyle{fancyindentwithindents} % name of theoremstyle
{.5\baselineskip±.2\baselineskip} % Space above, these are standard values for AMS class document
{.5\baselineskip±.2\baselineskip} % Space below
{\itshape\addtolength{\leftskip}{15mm}} % Body font +indent added
{-15mm} % Indent of header amount
{\bfseries} % Theorem head font
{} % Punctuation after theorem head
{.5em} % Space after theorem head
{\thmname{#1}\thmnumber{ #2}. \thmnote{[#3]}}% Theorem head spec (can be left empty, meaning ‘normal’)
\newtheorem{defi}{Definition}
\theoremstyle{fancyindent}
\newtheorem{thm}{Theorem}
\theoremstyle{fancyindentwithindents}
\newtheorem{thmind}{Theorem}
%\setlength{\parindent}{0em}
Now in the body of document you will produce a following outcome:

Details can be found here: http://www.ams.org/arc/tex/amscls/amsthdoc.pdf
Drawback is that it indeed does not work well with enumerate, to fix this one needs to follow advice here: A theoremstyle with complete indentation using amsthm . For instance the solution of Philippe Goutet works well with indenting enumerate
\makeatletter
\newtheoremstyle{indentedenumerate} % name of theoremstyle
{.5\baselineskip±.2\baselineskip} % Space above, these are standard values for AMS class document
{.5\baselineskip±.2\baselineskip} % Space below
{\itshape\addtolength{\@totalleftmargin}{15mm}
\addtolength{\linewidth}{-15mm}
\parshape 1 15mm \linewidth} % Body font +indent added +will work well with enumerate! (you need to add makeatletter)
{-15mm} % Indent of header amount
{\bfseries} % Theorem head font
{} % Punctuation after theorem head
{.5em} % Space after theorem head
{\thmname{#1}\thmnumber{ #2}. \thmnote{[#3]}}% Theorem head spec (can be left empty, meaning ‘normal’)
\makeatother
but in amsart
fails to indent equations (sic!).
\noindent
in front of the header formatting work?\noindent\bfseries
?\noindent
in theoremstyle does not work.