How Does A USB (non-PD) device modify the current it draws from a charger?
Chargers that use the USB VBUS as power source are very sophisticated mixed-signal processors, with extended analog functions and digital controllers. Below is a typical simplified diagram of a charger IC that takes and limits the intake, charges a Li-Ion cell in accord with source capabilities and follow CC-CV charging algorithm, and provides system voltage output to mobile device processors and other circuitry:

Brief explanation of entire functionality can be found in the datasheet. The IC takes substantial amount of analog information, digitally processes all thresholds, and generates necessary limits, timeouts, and all other sequencing.
In short, modern charging ICs do limit the input current intake by changing switching regulation parameters. The IC will reduce the cell's charging current if it is required to maintain the input limit.
So, to be compliant (and functional), USB devices usually incorporate an IC that implements BC1.2 protocol, so there IS A COMMUNICATION between the DCP (provider) and the consumer (the device). The BC1.2 IC determines the type of port, and this information gets communicated to the charging IC (bq25606 as above). The charging IC then maintains the appropriate input limit.