Covering perfect hash families provide a very compact representation of a useful family of covering arrays, leading to the best asymptotic upper bounds and fast, effective algorithms. Their compactness implies that an additional row in the hash family leads to many new rows in the covering array. In order to address this, subspace restrictions constrain covering perfect hash family so that a predictable set of many rows in the covering array can be removed without loss of coverage. Computing failure probabilities for random selections that must, or that need not, satisfy the restrictions, we identify a set of restrictions on which to focus. We use existing algorithms together with one novel method, affine composition, to accelerate the search. We report on a set of computational constructions for covering arrays to demonstrate that imposing restrictions often improves on previously known upper bounds.