Lookups are performed on creation. Once a value has been entered into a field then it is treated like a normal text or number. Instead of using Lookups to populate the tech's name, email,etc create a relationship between the tech request table and the tech info table using the tech's ID.
Leave the Lookup in place that fills in the tech's ID for a new request, because usually the same tech goes to certain buildings. Replace the Lookup fields that contain the tech's infor with the same fields in the Tech table. Now when the user changes 001 or 002 the new tech's info will also change.
I hope this makes sense. Your basic problem is that Lookups only happen once, they do not update themselves when something in the relationship changes. Once performed the field is just holding the data.
I agree that using related fields makes more sense than a look up for this situation but...
If you define a looked up value setting in Auto-enter field options, it should update correctly whenever the match field is updated (by entering a new site number for example.) If this is not happening, even after the user clicks on the background of the filemaker layout or a script commits the record, then you are either working with a web published database (where the user is accessing via a web browser) or you don't have the looked up value settings defined correctly.
All of these issues are moot if you simply place fields from the related table on your layout.