How can I cook cod without lemons?
Lemon is used as a flavoring, not as a cooking liquid, it's not going to keep the fish moist. The secret of having moist fish is the same as having moist beef, chicken or any meat or poultry: don't overcook it. Cooking releases moisture from the flesh, so cooking it well is all about timing - getting it cooked enough to have the internal temperature and consistency you want and no more as every extra second means more moisture lost. Fish is especially sensitive to timing, but with a bit of practice anyone can cook fish well. 

Fish, meat or poultry will have a juicy mouth feel when there is enough moisture stored in the flesh after cooking. Overcooked fish in a pool of sauce will still have a dry mouth feel, whereas perfectly cooked fish with no sauce at all will have a moist mouth feel. 

As for what to cook cod with as a replacement for lemon the answer is nothing. Fish has enough moisture to begin with, and when baking you don't need to assist heat transfer. Lemon is simply a flavoring, so replace it with flavoring you like. This could be browned butter (or just a bit of butter) if you want richness, or herbs if you like, or you could just season it with salt and pepper. 

If you want to get more fancy you could seal it up in parchment paper or foil (oil the foil so it doesn't stick) with a tiny bit of water or butter and some herbs and bake it that way, it seals in the moisture and creates a sauce - delicious!