You're right: The face you pick and the offset-value you type are completely volatile: What remains in memory is a dumb fixed plane defining the slice. In the DesignViewRepresentation that may be saved to the file there is no offset stored either, nor does it contain any referencekey to the picked face.
Your best shot would probably be to get the sectionplane-data from the API, and translate its root point by a multiple of its normal:
Sub MoveSectionViewPlane(Offset As Double)
Dim SectViewPlane1 As Plane
Dim SectViewPlane2 As Plane
Dim SectionType As SectionViewTypeEnum
Dim NewSectPlaneRootPt As Point
Dim NewSectionPlane As Plane
Dim SectPlaneNormal As Vector
Call ThisApplication.ActiveDocument.ComponentDefinition.RepresentationsManager.ActiveDesignViewRepresentation.GetSectionViewInfo(SectionType, SectViewPlane1, SectViewPlane2)
Set NewSectPlaneRootPt = SectViewPlane1.RootPoint.Copy
Set SectPlaneNormal = SectViewPlane1.Normal.AsVector
Call SectPlaneNormal.ScaleBy(Offset)
Call NewSectPlaneRootPt.TranslateBy(SectPlaneNormal)
Set NewSectionPlane = ThisApplication.TransientGeometry.CreatePlane(NewSectPlaneRootPt, SectViewPlane1.Normal.AsVector)
Call ThisApplication.ActiveDocument.ComponentDefinition.RepresentationsManager.ActiveDesignViewRepresentation.SetSectionView(SectionType, NewSectionPlane, SectViewPlane2)
End Sub
(This is for a half section view only, but it might inspire you to adapt it to some quarter section view if needed)