Alamouti code after or before IFFT block in OFDM
The basic concept of OFDM is to divide a high-bitrate datastream into $N$ low-bitrate datastreams and to multiplex these low-bitrate datastreams in frequency. That is, every datastream is assigned to a distinct frequency band (so-called subcarrier) that does not interfere with the other frequency bands. Orthogonality allows the frequency bands to be packed close together which increases the spectral efficiency of OFDM. As it turns out the frequency multiplex can be implemented very efficiently using the IFFT algorithm that transforms a frequency-domain signal into a time-domain signal. Every $N$ complex QAM symbols are one input vector to the IFFT which produces a vector of $N$ time-domain samples that are then transmitted sequentially over the channel. The construction of the transmit signal in frequency domain has several advantages:


Fast fading channels (often the case for multipath mobile channels) might significantly attenuate some frequencies. OFDM enables adaption to such a channel by switching off some subcarriers or decreasing the modulation order on the respective subcarriers.
Usage of cyclic prefix as guard interval makes channel equalization easy to implement.
Dynamic resource allocation is possible (see LTE uplink)


Your suggestion to take $N$ QAM symbols, apply the FFT and then transmit the FFT output corresponds to transmitting the spectral analysis of some time-domain signal one bin per symbol interval. This is totally different from applying the IFFT and I don't see any advantage in doing so.


  What is the reason for alamouti code to be implemented before IFFT? Can it also be implemented the way I thought after cyclic prefixer block?


Let's assume we apply the Alamouti space time block code (STBC) after the cyclic prefix. Let $x_k$ be the discrete-time output of the cylcic prefix block. Then the coded signal vector is given by
$$
\mathbf{x} =
\left( 
\begin{matrix}
  x_{k+1} &amp; -x_k^*\\
  x_k     &amp; x_{k+1}^*
\end{matrix}
\right)
$$
If we assume a perfect channel with channel matrix $\mathbf H = (1\quad1)$ and if we ignore noise, the received signal is
$$
\mathbf r = \mathbf H \mathbf x =
\left( 
\begin{matrix}
  x_{k+1} + x_k &amp; -x_k^* + x_{k+1}^*
\end{matrix}
\right)
$$
It is clear that we first have to decode $\mathbf r$ before we can demodulate it with the FFT. For doing so, the channel matrix has to be known. In general, the channel matrix is unknown at the receiver and thus has to be estimated. This channel estimation is done in frequency domain in OFDM systems, i. e. after the FFT block. As a consequence the STBC decoder has to be placed after the FFT as can be seen from the following figure:

(Figure is taken from Kim, J et al.: Receiver Designs for Alamouti Coded OFDM
Systems in Fast Fading Channels)

This in turn means that the STBC encoder has to be placed before the IFFT.