Change the Order of Fields on Teaser node.tpl
Example  

&lt;?php if ($teaser): ?&gt;
    &lt;?php print render($content['YOUR_IMAGE_FIELD']); ?&gt;
    &lt;?php print render($title_prefix); ?&gt;
        &lt;?php if ($title): ?&gt;
          &lt;h2&gt;&lt;?php print $title; ?&gt;&lt;/h2&gt;
        &lt;?php endif; ?&gt;
    &lt;?php print render($title_suffix); ?&gt;
    &lt;?php hide($content['YOUR_IMAGE_FIELD']); ?&gt;
    &lt;?php hide($content['links']); ?&gt;
    &lt;?php print render($content); ?&gt;
    &lt;?php print render($content['links']); ?&gt;
&lt;?php else: ?&gt;
   //...show default view mode
&lt;?php endif; ?&gt;


Most of the fields are bundled together into the $content variable.

We can remove them from being output in the $content variable by using the hide() function just before we render it (see above).

We can then print the specific field anywhere we like in the template like. See above where weve put the image field.

To determine what fields you have to play with do a var_dump($content) at the top of the template or even better use the Devel module to do this.