First to your sample in the first post: CT_TOPLEVELCONTROL should only be used for actual top-level, i.e. parent-less controls. Use CT_CONTROL for children.
If you want to clip child controls, you need to put them in a <Scroll> control (CT_SCROLL).
Lua Code:
local clippingContainer = wm:CreateControl("$(parent)Container", UI, CT_SCROLL)
local clippedChild = wm:CreateControl("$(parent)Child", clippingContainer, CT_CONTROL)
The Scroll control is used for scrolling lists for example. It can also apply smooth fade-out to contained controls near its edges, although I think it doesn't do that by default, so you shouldn't need to worry about that.