Robert could just as lawfully retained both castles for his sons, and made Joffrey the Prince of Dragonstone and Tommen the Lord of Storm's End.
Что-то мне кажется, Вы уже подгоняете, играя словами. Написано все достаточно четко. Именно retained for his sons. А дальше еще и конкретно указывается, что - кому. Наследнику ДК, как всегда и было, младшенькому - ШП.
retain - буквально "оставлять за". Если бы было так, как Вы предлагаете, Мартин написал бы что-то вроде:
Robert could just as lawfully retained both castles for himself, and then pass them over to his sons, dividing the castles between them: make Joffrey the Prince of Dragonstone and Tommen the Lord of Storm's End.
Не освещен, конечно, вопрос, кто управляет этими доменами, пока сыновей нет или они малы (назначаются кастеляны, или еще что), но явно читается, что сам Роберт в любом случае не оставляет себе владения.
И could здесь означает лишь опциональность такого варианта по отношению к тому, что выбрал Роберт. Другой модальный глагол типа should значил бы, что Роберт поступил незаконно, передав замки братьям. Но нет, получается, можно и так, и так, но мудрее было бы с точки зрения автора передать их именно сыновьям. Про то, чтобы оставить себе даже близко речи нет.