Teleportation sounds cool. One way you could do it is burrow zerglings all over the map. When they cast teleport, give a random amount of zerglings from player 7 to 8, then center location on zerglings owned by player 7, lastly give back zerglings to player 7.
For the random amount just randomize some switches and do like if switch 1 is set give 1 zergling, if switch 2 is set give 2 zergling, if switch 3 is set give 4 zergling, if switch 4 is set give 8 zergling, etc up until you reach total zergling / 2.
(I know one of the things you asked is that it didn't use too many triggers, not sure if this meets that criteria, hope it helps). Oh and if you wanted it to be somewhat close to where you started you could start by making only the lings in certain area p7, but this would be a little more complicated because the amount of lings would vary.
If you don't want to burrow lings all over, there might be a way by like this:
create 9 air units over unit you want to teleport
remove center one
remove a random amount 0 to 7 (use 3 switches 1,2,4)
center location on one
this new unit is at a nearby random location, to increase distance repeat these triggers as needed
finally to make sure the destination is landable, try creating or moving some unit there and then checking to make sure it is actually there.
This might be hard to do but it would be pretty cool.
EDIT:
Well I was bored so I went ahead and made the non zergling version that handles terrain properly, but then I read your post again and realized you wanted to move the observer to where you want instead of random location, so I hope this of some use anyways
here's the map:
http://www.darrenks.com/hobby/sc/teleport.scx