I've found a solution that solves my problem.
Alignment of data and text sections can be achieved by including an assembler file with dummy alignments. The alignment of a section will be the maximum alignment sepcified anywhere, so at a minimum it will have this alignment.
Example file align.s (compile with your assembler and include the object file in your link):
.section .text .balign 0x40 .section .data .balign 0x40 .end
- The gold linker aligns PLT and GOT entries by their sizes (16 and 8 bytes, respectively). This is sufficient for my use case.