Thanks to the help provided here, I was able to eliminate the communication delay between Ignition and the robot. To answer the post's subject line, the delay was due to poor implementation of Python rather than closing and opening sockets within buttons. Specifically, reducing the sleep.timer()
function from 15 seconds to less than one second. This seems painfully obvious upon writing.
However, I have a lot to fix and resolve (reducing wait times has exposed flaws in how I have been receiving responses), so thank you again to those who provided input.