For n an integer greater than 2, Can one always get a complete theory over a finite language with exactly n models (up to isomorphism)?

There's a theorem that says that 2 is impossible.

My understanding is this should be doable in a finite language, but I don't know how.

If you switch to a countable language, then you can do it as follows. To get 3 models, take the theory of unbounded dense linear orderings together with a sequence of increase constants < c_{i}: i < ω >. Then the c_{i}'s can either have no upper bound, an upper bound but no sup, or have a sup. This gives exactly 3 models. To get a number bigger than 3, we include a way to color all elements, and require that each color is unbounded and dense. (The c_{i}'s can be whatever color you like.) Then, we get one model for each color of the sup plus the two sup-less models.