quello che vuoi fare non ha a che vedere con le coordinate del cursore,
la posizione in cui inserire qualcosa e' determinata da quanto selezionato (che puo' essere anche niente, ma avra' necessariamente un inizio)
i metodi per gestire la selezione variano da browser a browser, dovresti approfondire .getSelection() e il Range object
fortunatamente qualcuno ha gia' pensato a mettere insieme un api per avere metodi un po' piu' consistenti
darei un' occhiata a https://code.google.com/p/rangy/

ciao