Yes, a Turing machine can decide that langauge: it just looks at the first character and accepts or rejects without even needing to look at the rest of the string.
The question "Are all recursive languages finite?" is not a generalization of "Is this particular infinite language recursive?" The fact that $\{ax\mid x\in\Sigma^*\}$ is recursive (decided by a Turing machine) and infinite (contains infinitely many strings) already shows that the answer to "Are all recursive languages finite?" is no.
To enumerate the strings in a language informally means to write them all down in a list but, as you've observed, this informal definition doesn't make a whole lot of sense if the language is infinite: you'd never finish. What we require is that, although the process of listing the strings in the langauge takes infinitely long, any single string in the language must be guaranteed to appear after a finite amount of time.
So, for example, 1, 2, 3, ... is an enumeration of the natural numbers. You'll never finish writing down the list but, if I pick a natural number (say, 2,938,427,365), I'll only have to wait a finite amount of time until you write that number. Conversely, if I pick something that isn't a natural number (e.g., a frog), I'm guaranteed that you'll never write that down. By way of a non-example, listing all the even numbers, then all the odd numbers isn't an enumeration of the naturals: you'll never finish writing the evens, so you'll never start writing the odds, so 1 will not appear in any finite amount of time.