A more intuitive way of understanding why reducing modulo a primitive irreducible polynomial is because you want to avoid duplicated values so that you get a full range field, as explained here:
Reed Solomon codes are created by the manipulation of finite group of numbers called a Galois Field. GF(256) is a field consisting of the every integer in the range 0 to 255 arranged in a particular order. If you could devise an arithmetic where the result of each operation produces another number in the field the overflow issues could be avoided. The generation (ordering) of the field is key. e.g. a simple monotonic series from 0 to 255 is a finite field BUT modulo 255 arithmetic fails commutative tests i.e. certain operations will not reverse.
A Galois field gf(p) is the element 0 followed by the (p-1) succeeding powers of α : 1, α, α^2, α^3, ..., α^(p-1)
Extending the gf(2) field used in binary arithmetic (and CRC calculation) to 256 elements that fit nicely in a computer byte: gf(2^8) = gf(256). Substituting the primitive element α=2 in the galois field it becomes 0, 1, 2, 4, 8, 16, and so on. This series is straightforward until elements greater than 127 are created. Doubling element values 128, 129, ..., 254 will violate the range by producing a result greater than 255. Some way must be devised to "fold" the results back into the finite field range without duplicating existing elements (this lets modulo 255 aritmetic out). This requires an irreducible primitive polynomial. "Irreducible" means it cannot be factored into smaller polynomials over the field. Without this mathematical insight it is possible to search for suitable numbers using empirical methods. There has to be some way of turning off bit 8 so an XOR operation on results greater than 255 with a number in the range 256 to 256+255 will find "irreducible primitive polynomial" if they exist. A "brute force" scanning program [source] checks each candidate and rejects potential polynomials if they duplicate existing elements in the field.
In other words: you need to reduce modulo a primitive irreducible polynomial to avoid duplicated values in your precomputed tables: indeed, your precomputed tables replace 0,1,2,...,256 by alpha^0, alpha^1, ..., alpha^255 so that you can easily replace multiplication by additions of exponents. However, you of course know that some values, like alpha^255, will overflow, so that you need to reduce modulo something. But if you don't use a primitive irreducible polynomial, you will get duplicated values, so that for example alpha^128 may be equal to alpha^1, thus giving you a truncated field (ie, not all values are uniquely represented).