You've missed another factor. England had just had a civil war and Henry's claim on the throne was very weak.
I am afraid that I must contradict this point of view. Henry VIII's father, Henry VII, did indeed have a very weak claim on the throne due to a potentially illegitimate lineage. Henry VII, however, consoldiated his position admirably well; his son had no succession problems at all.
However, you are absolutely correct that there were political reasons. If Henry VIII did not produce an heir, succession questions would indeed have been raised. The issue of papal revenue (first fruits, Peter's Pence, etc.) was certainly an important one.