this a behaviral of the avalon switch fabric, an old bug/problem/feature
your master (niosII) is 32 bit your slave (ext flash) 16bit
unfortunately the avalon switch fabric fetches 2 16bit values to get 32 bit
yes this is not needed as you read only 16 bit but it is implemented that way.
this gets anoying when the external component does something upon a read like all external profibus chips that i am aware of, a read of certain addresses are recognized and clear other bits, hard to find.
normaly these wasted read cycles do not disturb so you can ignore them
a 16 bit write does only 1 16bit cycle
if you realy want to get rid of the additional cycle you will need to insert some kind of logic that monitors the byteenable as they tell you the truth what byte is realy needed.