Hi,
i also struggled a lot with this issue that the transition time seems to be aleatory. Sometimes it seems to add more than 1 sec, sometimes not, but not always depending on the length of the clip. I tried all solutions mentioned here, but none really worked for me.
I want to suggest one which finally solved my problems. I have latest IMovie on Yosemite.
As mentioned i tried all solutions described on the forum here and managed in some cases to add transitions of 2-5 sec, which was sufficient. Still there were lot of transitions which wouldn't change at all, whatever i would do, they would stay at 1 sec.
Then i delete the 1 sec transition and simply drag and drop another transition of 5 sec from another place. Then it would accept it here with 5 sec as well. Now creating a new transition in the old place where i dragged would allow same value which was before, like 5 sec. Now i have at least two 5 sec transitions. And so on, with all of them. I had the feeling that imovie memorizes the transition time between clips with whatever initial value and wouldn't allow to change that unless drag drop from another place with higher value, which only would kind of replace this memory.
Hope this works for some of you.