You would use resistors to pull the M[2:0] inputs HIGH or LOW so you could override them and change the Configuration Mode code on M[2:0].
For example, a Kintex-7 board I designed has:
M[0] tied to 3V3 (Vcco_0)
M[1] to GND
M[2] to (a) no-fit jumper to 3V3, (b) 1K to GND
So the Configuration Mode code is normally LLH (001) to configure from Serial SPI.
With jumper in, Configuration Mode code is HLH (101) for JTAG for development.
The datasheet is warning you that you can't use large pull-up/down resistors (10 kΩ-odd) like for typical logic inputs, it has to be 1 kΩ or less.
And M[2:0] must be pulled HIGH by, or connected to, Vcco_0, you can't drive it from, say, an MCU output pin, or a rail from another regulator etc. The reason isn't stated in the Xilinx datasheets but it's probably to ensure that any HIGH level is definitely there and stable when configuration circuitry (powered by Vcco_0) starts.
Adding extra resistors means it'll cost more.
Correct, great attitude to electronics design engineering: the simpler the schematic, the better. Every single part must justify itself. If it can't be, it don't go on.
Ignoring that this is a resistor, if any component isn't needed and left off, it can't then: go out of stock; go obsolete; fail; have a dry joint; be vibrated off; dissipate any power; make a parts list longer; etc etc. Applying that attitude is a basis for good engineering. Adding a part has a lot more effect than just the part cost.