First thought
Select all by window filtered for lines and circles.
Isolate a circle in selection set
Determine current diameter
Prompt for new diameter
Calculate amount to reduce each end of each line ( half difference in circle size )
Iterate thtough selection set
If Circle, change diameter
If Line, calculate new start and end points based on calculated offset, move endpoints.
Moving keeps any additional data associated with entity.
Go for a beer.