Your explanation actually makes a lot of sense. Did you take care of the following?
In CSS, height: 100% only works if all parent elements up the DOM tree have an explicit height. In Mendix layouts (cards, DataViews, scroll containers), parents often have height: auto, so during the initial layout pass the browser can’t resolve the height. As a result, the <video> first renders at its intrinsic default size and then resizes once the layout is recalculated which is exactly the “small -> correct size” behavior. That’s why setting width: 100% / height: 100% only on the video itself isn’t sufficient unless the entire parent chain is constrained.
As an alternative, have you also considered the Mendix-developed Video Player widget?