Alasdair is the Gaelic for Alexander. It's good name; strong and substantial. (Alistair is an Anglicised spelling; the Gaelic avoids the nickname 'Ali', if that ,matters to you.) James is classic - short, elegant. Hugo is nice, too.
Whichever you choose among the three will be fine.