I want Class-A node to uplink a request for some data and get immediate response. I believe RX1 window is about 2 sec, so is it possible to fetch requested data on the server (some MQTT service waits for request, handles request and posts back) and send response immediately within RX1 window?
Yes, this is possible, but the default RX1 window is 1 sec.
See also the following
# Get downlink data delay.
# This is the time that LoRa Server waits between forwarding data to the
# application-server and reading data from the queue. A higher value
# means that the application-server has more time to schedule a downlink
# queue item which can be processed within the same uplink / downlink
# Please note that this value has influence on the uplink / downlink
# roundtrip time. Setting this value too high means LoRa Server will be
# unable to respond to the device within its receive-window.
Do I need to change anything on the end node?