There is a simple answer to your question: no German (or English) verb can directly govern a finite verb as its complement. Note that "gehen" (and "go") used to be transitive (cf. Latin "Eo Romam" = "I go Rome", instead of the later "Eo ad/in Romam"), and, in fact, you still have remnants of that early construction in "I go home" (English) and "heimgehen" in German, as well as in "I go shopping/swimming/...etc. (where the -ing forms are verbal nominals and to that extent natural complements of transitive verbs), as in "Ich gehe spazieren/tanzen/schwimmen," etc. Now, the infinitive is simply a verbal noun (in Spanish it may still even be used with an article: "El ir a casa me hace ilusión", "Odio el ir a casa") and to that extent "einkaufen", etc. supply a natural complement to older transitives like "gehen": "Ich gehe einkaufen/spazieren/wschwimmen... etc. are well formed because they satisfy the selection requirements of "gehen" (as of modals, causatives, etc.). On the contrary, in German, English, and as far as I know, in most other European languages, a tensed verb like "kaufE ein" is always excluded as a direct complement of ANY verb (it may figure inside a clause, but in that case the complement is the clause, not the finite verb). This nicely explains why your second sentence, "*Ich gehe kaufe ein" is ill-formed. In certain African languages and in Mandarin, where such serial verbs may be finite, at least in meaning (and carry guò, -lè, etc.), it would be perfectly canonical, :-).