If the transfer fucntion of the controller, C(z), is improper (more zeros than poles), then its partial fraction expansion will have terms in z, z^2 ... depending on the difference between the order of the numerator and denominator. These terms indicate that the ouput of C(z) at the current time depends on values of the input at future times, which might make sense mathematically but can't really be implemented physically or in simulation. A few options are:
Add some poles, typically at high frequency, make C(z) a proper transfer function yet still keep the frequency response of C(z) as close as possible to what you want it to be over frequencies of interest,
Combine C(z) with some other transfer function in series in the system such that the product is at least proper. For example, if the order of the numerator of C(z) is one more than the order of the denominator, the combining C(z) with a transfer function, say F(z), in series that has a denominator order at least one higher than the order of the numerator will make the product C(z)*F(z) at least proper, which can then be implemented in a single block.